import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core'; import { FormBuilder } from '@angular/forms'; import { ResultOf } from '@graphql-typed-document-node/core'; import { DataService, GetAdministratorDetailDocument, LanguageCode, NotificationService, Permission, PermissionDefinition, RoleFragment, TypedBaseDetailComponent } from '@vendure/admin-ui/core'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; export interface PermissionsByChannel { channelId: string; channelCode: string; permissions: { [K in Permission]: boolean; }; } export declare const GET_ADMINISTRATOR_DETAIL: import("apollo-angular").TypedDocumentNode; export declare class AdminDetailComponent extends TypedBaseDetailComponent implements OnInit, OnDestroy { private changeDetector; protected dataService: DataService; private formBuilder; private notificationService; customFields: import("@vendure/admin-ui/core").CustomFieldConfig[]; detailForm: import("@angular/forms").FormGroup<{ emailAddress: import("@angular/forms").FormControl; firstName: import("@angular/forms").FormControl; lastName: import("@angular/forms").FormControl; password: import("@angular/forms").FormControl; roles: import("@angular/forms").FormControl<{ __typename?: "Role"; id: string; createdAt: any; updatedAt: any; code: string; description: string; permissions: Array; channels: Array<{ __typename?: "Channel"; id: string; code: string; token: string; }>; }[] | null>; customFields: import("@angular/forms").FormGroup<{ [x: string]: import("@angular/forms").FormControl<{} | null>; }>; }>; permissionDefinitions: PermissionDefinition[]; allRoles$: Observable; selectedRoles: RoleFragment[]; selectedRolePermissions: { [channelId: string]: PermissionsByChannel; }; selectedChannelId: string | null; getAvailableChannels(): PermissionsByChannel[]; constructor(changeDetector: ChangeDetectorRef, dataService: DataService, formBuilder: FormBuilder, notificationService: NotificationService); ngOnInit(): void; ngOnDestroy(): void; rolesChanged(roles: RoleFragment[]): void; getPermissionsForSelectedChannel(): string[]; create(): void; save(): void; protected setFormValues(entity: NonNullable['administrator']>, languageCode: LanguageCode): void; private buildPermissionsMap; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }