import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { PoolCreateComponent } from './pool-create/pool-create.component';
import { PoolDetailsComponent } from './pool-details/pool-details.component';
import { PoolEditComponent } from './pool-edit/pool-edit.component';
import { LbPoolsRoutingModule } from './lb-pools-routing.module';
import { ObjectsViewModule } from '@objects-view/objects-view.module';
import { PoolCreateFormComponent } from './tabs/pool-create-form/pool-create-form.component';
import { PoolEditFormComponent } from './tabs/pool-edit-form/pool-edit-form.component';
import { PoolDetailsOverviewComponent } from './tabs/pool-details-overview/pool-details-overview.component';
import { PoolDetailsMembersComponent } from './tabs/pool-details-members/pool-details-members.component';
import { PoolDetailsHealthmonitorsComponent } from './tabs/pool-details-healthmonitors/pool-details-healthmonitors.component';
import { UiModule } from '@shared/ui/ui.module';
import { ReactiveFormsModule } from '@angular/forms';
import { ErrorHandlingModule } from '@shared/error-handling/error-handling.module';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatInputModule } from '@angular/material/input';
import { MatSelectModule } from '@angular/material/select';
import { MatCheckboxModule } from '@angular/material/checkbox';
import { MatListModule } from '@angular/material/list';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';
import { MatExpansionModule } from '@angular/material/expansion';
import { HealthmonitorCreateComponent } from './healthmonitor-create/healthmonitor-create.component';
import { HealthmonitorDetailsComponent } from './healthmonitor-details/healthmonitor-details.component';
import { HealthmonitorEditComponent } from './healthmonitor-edit/healthmonitor-edit.component';
import { HealthmonitorEditFormComponent } from './tabs/healthmonitor-edit-form/healthmonitor-edit-form.component';
import { HealthmonitorDetailsOverviewComponent } from './tabs/healthmonitor-details-overview/healthmonitor-details-overview.component';
import { MatTableModule } from '@angular/material/table';
import { MembersCreateComponent } from './members-create/members-create.component';
import { MemberDetailsComponent } from './member-details/member-details.component';
import { MemberEditComponent } from './member-edit/member-edit.component';
import { MembersCreateFormComponent } from './tabs/members-create-form/members-create-form.component';
import { MemberDetailsOverviewComponent } from './tabs/member-details-overview/member-details-overview.component';
import { MemberEditFormComponent } from './tabs/member-edit-form/member-edit-form.component';


@NgModule({
  declarations: [
    PoolCreateComponent,
    PoolDetailsComponent,
    PoolEditComponent,
    PoolCreateFormComponent,
    PoolEditFormComponent,
    PoolDetailsOverviewComponent,
    PoolDetailsHealthmonitorsComponent,
    PoolDetailsMembersComponent,
    HealthmonitorCreateComponent,
    HealthmonitorDetailsComponent,
    HealthmonitorEditComponent,
    HealthmonitorEditFormComponent,
    HealthmonitorDetailsOverviewComponent,
    MembersCreateComponent,
    MemberDetailsComponent,
    MemberEditComponent,
    MembersCreateFormComponent,
    MemberDetailsOverviewComponent,
    MemberEditFormComponent,
  ],
    imports: [
        CommonModule,
        LbPoolsRoutingModule,
        ObjectsViewModule,
        UiModule,
        ReactiveFormsModule,
        ErrorHandlingModule,
        MatFormFieldModule,
        MatInputModule,
        MatSelectModule,
        MatCheckboxModule,
        MatListModule,
        MatButtonModule,
        MatIconModule,
        MatExpansionModule,
        MatTableModule,
    ]
})
export class LbPoolsModule {
}
