import * as _angular_core from '@angular/core'; import { Type, InjectionToken, InjectOptions, InputSignal, Injector, ChangeDetectorRef, AfterViewInit, TemplateRef, OnDestroy, TrackByFunction, PipeTransform } from '@angular/core'; import * as i4 from '@ng-bootstrap/ng-bootstrap'; import { Placement, NgbInputDatepicker, NgbTimepicker } from '@ng-bootstrap/ng-bootstrap'; import * as i1 from '@abp/ng.core'; import { ABP, TrackByService, ConfigStateService, TimezoneService, PermissionService, ListService } from '@abp/ng.core'; import { ValidatorFn, AsyncValidatorFn, UntypedFormGroup, ControlValueAccessor, ControlContainer, FormGroupDirective } from '@angular/forms'; import * as rxjs from 'rxjs'; import { Observable } from 'rxjs'; import { LinkedList } from '@abp/utils'; import { SelectionType, DatatableComponent } from '@swimlane/ngx-datatable'; import * as i2 from '@abp/ng.theme.shared'; import * as i3 from '@ngx-validate/core'; declare const enum ePropType { Boolean = "boolean", Date = "date", DateTime = "datetime", Email = "email", Enum = "enum", Hidden = "hidden", MultiSelect = "multiselect", Number = "number", Password = "password", PasswordInputGroup = "passwordinputgroup", String = "string", Text = "text", Time = "time", Typeahead = "typeahead" } declare abstract class PropList> extends LinkedList { } declare abstract class PropData { abstract getInjected: (token: Type | InjectionToken, notFoundValue?: T, options?: InjectOptions) => T; index?: number | InputSignal; abstract record: R | InputSignal; get data(): ReadonlyPropData; } type ReadonlyPropData = Readonly<{ getInjected: (token: Type | InjectionToken, notFoundValue?: T, options?: InjectOptions) => T; index?: number; record: R; }>; declare abstract class Prop { readonly type: ePropType; readonly name: string; readonly displayName: string; readonly permission: string; readonly visible: PropPredicate; readonly isExtra: boolean; readonly template?: Type; readonly className?: string; readonly formText?: string; readonly tooltip?: FormPropTooltip; readonly displayTextResolver?: PropDisplayTextResolver; constructor(type: ePropType, name: string, displayName: string, permission: string, visible?: PropPredicate, isExtra?: boolean, template?: Type, className?: string, formText?: string, tooltip?: FormPropTooltip, displayTextResolver?: PropDisplayTextResolver); } type PropCallback = (data: ReadonlyPropData, auxData?: any) => R; type PropPredicate = (data?: ReadonlyPropData, auxData?: any) => boolean; type PropDisplayTextResolver = (data?: ReadonlyPropData) => string; declare abstract class PropsFactory> { protected abstract _ctor: Type; private contributorCallbacks; get(name: string): C; } declare abstract class Props>> { private readonly callbackList; protected abstract _ctor: Type; get props(): L; constructor(callbackList: PropContributorCallback[]); addContributor(contributeCallback: PropContributorCallback): void; clearContributors(): void; } type PropContributorCallbacks>> = Record[]>; type PropContributorCallback>> = (propList: L) => any; type InferredProp = T extends PropList ? U : T; type PartialWithOptions = Partial>; type FilteredWithOptions = Omit; declare class FormPropList extends PropList> { } declare class FormProps extends Props>> { protected _ctor: Type>; } interface FormPropGroup { name: string; className?: string; } interface FormPropTooltip { text: string; params?: string[]; placement?: 'top' | 'end' | 'bottom' | 'start'; } declare class GroupedFormPropList { readonly items: GroupedFormPropItem[]; count: number; addItem(item: FormProp): void; } interface GroupedFormPropItem { group?: FormPropGroup; formPropList: FormPropList; } declare class CreateFormPropsFactory extends PropsFactory> { protected _ctor: Type>; } declare class EditFormPropsFactory extends PropsFactory> { protected _ctor: Type>; } declare class FormProp extends Prop { readonly validators: PropCallback; readonly asyncValidators: PropCallback; readonly disabled: PropPredicate; readonly readonly: PropPredicate; readonly autocomplete: string; readonly defaultValue: boolean | number | string | Date | Array; readonly options: PropCallback[]>> | undefined; readonly id: string | undefined; readonly template?: Type; readonly className?: string; readonly group?: FormPropGroup | undefined; readonly displayTextResolver?: PropDisplayTextResolver; readonly formText?: string; readonly tooltip?: FormPropTooltip; constructor(options: FormPropOptions); static create(options: FormPropOptions): FormProp; static createMany(arrayOfOptions: FormPropOptions[]): FormProp[]; } declare class FormPropData extends PropData { readonly record: R; getInjected: PropData['getInjected']; constructor(injector: Injector, record: R); } type OptionalKeys$2 = 'permission' | 'visible' | 'displayName' | 'isExtra' | 'validators' | 'asyncValidators' | 'disabled' | 'readonly' | 'autocomplete' | 'defaultValue' | 'options' | 'id' | 'displayTextResolver' | 'formText' | 'tooltip'; type FormPropOptions = PartialWithOptions, OptionalKeys$2> & FilteredWithOptions, OptionalKeys$2>; type CreateFormPropDefaults = Record[]>; type CreateFormPropContributorCallback = PropContributorCallback>; type CreateFormPropContributorCallbacks = PropContributorCallbacks>; type EditFormPropDefaults = Record[]>; type EditFormPropContributorCallback = PropContributorCallback>; type EditFormPropContributorCallbacks = PropContributorCallbacks>; declare class ExtensibleDateTimePickerComponent { readonly cdRef: ChangeDetectorRef; prop: _angular_core.InputSignal>; meridian: _angular_core.InputSignal; placement: _angular_core.InputSignal; readonly date: _angular_core.Signal; readonly time: _angular_core.Signal; setDate(dateStr: string): void; setTime(dateStr: string): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare const enum eExtensibleComponents { PasswordComponent = "ThemeShared.Extensions.PasswordComponent" } declare class ExtensibleFormPropService { #private; meridian$: rxjs.Observable; isRequired(validator: ValidatorFn): boolean; getComponent(prop: FormProp): "date" | "hidden" | "multiselect" | "passwordinputgroup" | "time" | "typeahead" | "template" | "checkbox" | "dateTime" | "textarea" | "select" | "input"; getType(prop: FormProp): "email" | "hidden" | "number" | "password" | "passwordinputgroup" | "text" | "checkbox"; calcAsterisks(validators: ValidatorFn[]): "" | "*"; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵprov: _angular_core.ɵɵInjectableDeclaration; } declare class ExtensibleFormPropComponent implements AfterViewInit { #private; protected service: ExtensibleFormPropService; readonly cdRef: ChangeDetectorRef; readonly track: TrackByService; private injector; private readonly form; readonly data: _angular_core.InputSignal(token: _angular_core.Type | _angular_core.InjectionToken, notFoundValue?: T, options?: _angular_core.InjectOptions) => T; index?: number; record: any; }>>; readonly prop: _angular_core.InputSignal>; readonly first: _angular_core.InputSignal; readonly isFirstGroup: _angular_core.InputSignal; private readonly fieldRef; injectorForCustomComponent?: Injector; asterisk: string; containerClassName: string; showPassword: boolean; options$: Observable[]>; validators: ValidatorFn[]; readonly: boolean; typeaheadModel: any; passwordKey: eExtensibleComponents; disabledFn: (data: ReadonlyPropData) => boolean; get disabled(): boolean; constructor(); setTypeaheadValue(selectedOption: ABP.Option): void; search: (text$: Observable) => Observable; typeaheadFormatter: (option: ABP.Option) => string; meridian$: Observable; get isInvalid(): boolean; private getTypeaheadControls; private setAsterisk; ngAfterViewInit(): void; getComponent(prop: FormProp): string; getType(prop: FormProp): string; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class ExtensibleFormComponent { readonly cdRef: ChangeDetectorRef; readonly track: TrackByService; private readonly container; private readonly extensions; private readonly identifier; readonly formProps: _angular_core.Signal; readonly selectedRecord: _angular_core.InputSignal; extraPropertiesKey: string; readonly groupedPropList: _angular_core.WritableSignal>; groupedPropListOfArray: FormProp[][]; readonly record: _angular_core.WritableSignal; constructor(); get form(): UntypedFormGroup; get extraProperties(): UntypedFormGroup; createGroupedList(propList: FormPropList): GroupedFormPropList; isAnyGroupMemberVisible(index: number, data: any): boolean; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "abp-extensible-form", ["abpExtensibleForm"], { "selectedRecord": { "alias": "selectedRecord"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare abstract class ActionList> extends LinkedList { } declare abstract class ActionData { abstract getInjected: (token: Type | InjectionToken, notFoundValue?: T, flags?: InjectOptions) => T; index?: number | InputSignal; abstract record: R | InputSignal; get data(): ReadonlyActionData; } type ReadonlyActionData = Readonly<{ getInjected: (token: Type | InjectionToken, notFoundValue?: T, flags?: InjectOptions) => T; index?: number; record: R; }>; declare abstract class Action { readonly permission: string; readonly visible: ActionPredicate; readonly action: ActionCallback; readonly btnClass?: string; readonly btnStyle?: string; constructor(permission: string, visible?: ActionPredicate, action?: ActionCallback, btnClass?: string, btnStyle?: string); } type ActionCallback = (data: ReadonlyActionData) => R; type ActionPredicate = (data?: ReadonlyActionData) => boolean; declare abstract class ActionsFactory> { protected abstract _ctor: Type; private contributorCallbacks; get(name: string): C; } declare abstract class Actions>> { private readonly callbackList; protected abstract _ctor: Type; get actions(): L; constructor(callbackList: ActionContributorCallback[]); addContributor(contributeCallback: ActionContributorCallback): void; clearContributors(): void; } type ActionContributorCallbacks>> = Record[]>; type ActionContributorCallback>> = (actionList: L) => any; type InferredAction = T extends ActionList ? U : T; declare class EntityActionList extends ActionList> { } declare class EntityActions extends Actions> { protected _ctor: Type>; } declare class EntityActionsFactory extends ActionsFactory> { protected _ctor: Type>; } declare class EntityAction extends Action { readonly text: string; readonly icon: string; readonly btnClass?: string; readonly btnStyle?: string; readonly showOnlyIcon?: boolean; readonly tooltip?: FormPropTooltip; constructor(options: EntityActionOptions); static create(options: EntityActionOptions): EntityAction; static createMany(arrayOfOptions: EntityActionOptions[]): EntityAction[]; } type OptionalKeys$1 = 'permission' | 'visible' | 'icon'; type EntityActionOptions = PartialWithOptions, OptionalKeys$1> & FilteredWithOptions, OptionalKeys$1>; type EntityActionDefaults = Record[]>; type EntityActionContributorCallback = ActionContributorCallback>; type EntityActionContributorCallbacks = ActionContributorCallbacks>; declare class EntityPropList extends PropList> { } declare class EntityProps extends Props> { protected _ctor: Type>; } declare class EntityPropsFactory extends PropsFactory> { protected _ctor: Type>; } declare class EntityProp extends Prop { readonly columnWidth: number | undefined; readonly sortable: boolean; readonly valueResolver: PropCallback>; readonly action?: ActionCallback; readonly component?: Type; readonly enumList?: Array>; readonly tooltip?: FormPropTooltip; readonly columnVisible: ColumnPredicate; constructor(options: EntityPropOptions); static create(options: EntityPropOptions): EntityProp; static createMany(arrayOfOptions: EntityPropOptions[]): EntityProp[]; } type OptionalKeys = 'permission' | 'visible' | 'columnVisible' | 'displayName' | 'isExtra' | 'columnWidth' | 'sortable' | 'valueResolver' | 'action' | 'component' | 'enumList'; type EntityPropOptions = PartialWithOptions, OptionalKeys> & FilteredWithOptions, OptionalKeys>; type EntityPropDefaults = Record[]>; type EntityPropContributorCallback = PropContributorCallback>; type EntityPropContributorCallbacks = PropContributorCallbacks>; type ColumnPredicate = (getInjected: GetInjected, auxData?: any) => boolean; type GetInjected = (token: Type | InjectionToken, notFoundValue?: T, options?: InjectOptions) => T; declare class ExtensibleTableRowDetailComponent { readonly rowHeight: _angular_core.InputSignal; readonly template: _angular_core.Signal>; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "abp-extensible-table-row-detail", never, { "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; }, {}, ["template"], never, true, never>; } interface RowDetailContext { row: R; expanded: boolean; } declare class ExtensibleTableComponent implements AfterViewInit, OnDestroy { #private; readonly getInjected: any; protected readonly cdr: ChangeDetectorRef; protected readonly locale: string; protected readonly config: ConfigStateService; protected readonly timeZoneService: TimezoneService; protected readonly entityPropTypeClasses: Partial<{ boolean: string; date: string; datetime: string; email: string; enum: string; hidden: string; multiselect: string; number: string; password: string; passwordinputgroup: string; string: string; text: string; time: string; typeahead: string; }>; protected readonly permissionService: PermissionService; private platformId; protected isBrowser: boolean; readonly actionsTextInput: _angular_core.InputSignal; readonly dataInput: _angular_core.InputSignal; readonly list: _angular_core.InputSignal>; readonly recordsTotal: _angular_core.InputSignal; readonly actionsColumnWidthInput: _angular_core.InputSignal; readonly actionsTemplate: _angular_core.InputSignal>; readonly selectable: _angular_core.InputSignal; readonly selectionTypeInput: _angular_core.InputSignal<"checkbox" | SelectionType | "single" | "multi" | "multiClick" | "cell">; readonly selected: _angular_core.InputSignal; readonly infiniteScroll: _angular_core.InputSignal; readonly isLoading: _angular_core.InputSignal; readonly scrollThreshold: _angular_core.InputSignal; readonly tableHeight: _angular_core.InputSignal; readonly rowDetailTemplate: _angular_core.InputSignal>>; readonly rowDetailHeight: _angular_core.InputSignal; readonly tableActivate: _angular_core.OutputEmitterRef; readonly selectionChange: _angular_core.OutputEmitterRef; readonly loadMore: _angular_core.OutputEmitterRef; readonly rowDetailToggle: _angular_core.OutputEmitterRef; protected readonly _data: _angular_core.WritableSignal; private readonly _actionsColumnWidth; readonly rowDetailComponent: _angular_core.Signal>; readonly table: _angular_core.Signal>; protected readonly actionsText: _angular_core.Signal; protected readonly selectionType: _angular_core.Signal; protected get data(): R[]; protected set data(value: R[]); protected get effectiveRowDetailTemplate(): TemplateRef> | undefined; protected get effectiveRowDetailHeight(): string | number; hasAtLeastOnePermittedAction: boolean; readonly propList: EntityPropList; readonly actionList: EntityActionList; readonly trackByFn: TrackByFunction>; private readonly loadMoreSubject; private readonly loadMoreSubscription; readonly columnWidths: _angular_core.Signal; constructor(); private prepareRecord; private getIcon; private getEnum; getContent(prop: EntityProp, data: ReadonlyPropData): Observable; isVisibleActions(rowData: any): boolean; onSelect({ selected }: { selected: any[]; }): void; onScroll(scrollEvent: Event): void; private shouldHandleScroll; private isNearScrollBottom; private triggerLoadMore; getTableHeight(): string; toggleExpandRow(row: R): void; ngAfterViewInit(): void; ngOnDestroy(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "abp-extensible-table", ["abpExtensibleTable"], { "actionsTextInput": { "alias": "actionsText"; "required": false; "isSignal": true; }; "dataInput": { "alias": "data"; "required": false; "isSignal": true; }; "list": { "alias": "list"; "required": true; "isSignal": true; }; "recordsTotal": { "alias": "recordsTotal"; "required": true; "isSignal": true; }; "actionsColumnWidthInput": { "alias": "actionsColumnWidth"; "required": false; "isSignal": true; }; "actionsTemplate": { "alias": "actionsTemplate"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectionTypeInput": { "alias": "selectionType"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "infiniteScroll": { "alias": "infiniteScroll"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "scrollThreshold": { "alias": "scrollThreshold"; "required": false; "isSignal": true; }; "tableHeight": { "alias": "tableHeight"; "required": false; "isSignal": true; }; "rowDetailTemplate": { "alias": "rowDetailTemplate"; "required": false; "isSignal": true; }; "rowDetailHeight": { "alias": "rowDetailHeight"; "required": false; "isSignal": true; }; }, { "tableActivate": "tableActivate"; "selectionChange": "selectionChange"; "loadMore": "loadMore"; "rowDetailToggle": "rowDetailToggle"; }, ["rowDetailComponent"], never, true, never>; } declare class ToolbarActionList extends ActionList> { } declare class ToolbarActions extends Actions> { protected _ctor: Type>; } declare class ToolbarActionsFactory extends ActionsFactory> { protected _ctor: Type>; } declare class ToolbarAction extends Action { readonly text: string; readonly icon: string; readonly btnClass?: string; constructor(options: ToolbarActionOptions); static create(options: ToolbarActionOptions): ToolbarAction; static createMany(arrayOfOptions: ToolbarActionOptions[]): ToolbarAction[]; } declare class ToolbarComponent extends Action { readonly component: Type; constructor(options: ToolbarComponentOptions); static create(options: ToolbarComponentOptions): ToolbarComponent; static createMany(arrayOfOptions: ToolbarComponentOptions[]): ToolbarComponent[]; } type OptionalActionKeys = 'permission' | 'visible' | 'icon' | 'btnClass'; type ToolbarActionOptions = PartialWithOptions, OptionalActionKeys> & FilteredWithOptions, OptionalActionKeys>; type OptionalComponentKeys = 'permission' | 'visible' | 'action'; type ToolbarComponentOptions = PartialWithOptions, OptionalComponentKeys> & FilteredWithOptions, OptionalComponentKeys>; type ToolbarActionDefault = ToolbarAction | ToolbarComponent; type ToolbarActionDefaults = Record>>; type ToolbarActionContributorCallback = ActionContributorCallback>; type ToolbarActionContributorCallbacks = ActionContributorCallbacks>; type InferredData = ActionData>; type InferredRecord$1 = L extends ActionList ? R : any; interface HasCreateInjectorPipe { getData: () => ReadonlyActionData; injector: Injector; getInjected: InferredData>['getInjected']; } declare abstract class AbstractActionsComponent>> extends ActionData> { readonly actionList: L; readonly getInjected: InferredData['getInjected']; record: _angular_core.InputSignal>; protected constructor(); static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵdir: _angular_core.ɵɵDirectiveDeclaration, never, never, { "record": { "alias": "record"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>; } declare class GridActionsComponent extends AbstractActionsComponent> { readonly icon: _angular_core.InputSignal; readonly index: _angular_core.InputSignal; readonly text: _angular_core.InputSignal; readonly trackByFn: TrackByFunction>; constructor(); static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "abp-grid-actions", ["abpGridActions"], { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } declare class PageToolbarComponent extends AbstractActionsComponent> implements HasCreateInjectorPipe { readonly injector: Injector; defaultBtnClass: string; getData: () => Readonly<{ getInjected: (token: _angular_core.Type | _angular_core.InjectionToken, notFoundValue?: T, flags?: _angular_core.InjectOptions) => T; index?: number; record: R; }>; readonly trackByFn: TrackByFunction>; constructor(); asToolbarAction(value: ToolbarActionDefault): { value: ToolbarAction; }; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration, "abp-page-toolbar", ["abpPageToolbar"], {}, {}, never, never, true, never>; } declare class ExtensibleFormMultiselectComponent implements ControlValueAccessor { prop: _angular_core.InputSignal>; options: _angular_core.InputSignal[]>; selectedValues: any[]; disabled: boolean; private onChange; private onTouched; setDisabledState(isDisabled: boolean): void; isChecked(value: any): boolean; onCheckboxChange(value: any, checked: boolean): void; writeValue(value: any[]): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare const EXTRA_PROPERTIES_KEY = "extraProperties"; type InferredRecord = L extends PropList ? R : never; declare class PropDataDirective> extends PropData> implements OnDestroy { private tempRef; private vcRef; readonly propList: _angular_core.InputSignal; readonly record: _angular_core.InputSignal>; readonly index: _angular_core.InputSignal; readonly getInjected: PropData>['getInjected']; constructor(); ngOnDestroy(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵdir: _angular_core.ɵɵDirectiveDeclaration, "[abpPropData]", ["abpPropData"], { "propList": { "alias": "abpPropDataFromList"; "required": false; "isSignal": true; }; "record": { "alias": "abpPropDataWithRecord"; "required": true; "isSignal": true; }; "index": { "alias": "abpPropDataAtIndex"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } type DisplayNameGeneratorFn = (displayName: LocalizableStringDto, fallback: LocalizableStringDto) => string | undefined; type EntityExtensions = Record; interface EntityExtensionDto { properties: EntityExtensionProperties; configuration: Record; } type EntityExtensionProperties = Record; interface ExtensionEnumDto { fields: ExtensionEnumFieldDto[]; localizationResource?: string; transformed?: any; } interface ExtensionEnumFieldDto { name?: string; value: any; } interface ExtensionPropertyApiCreateDto { isAvailable: boolean; } interface ExtensionPropertyApiDto { onGet: ExtensionPropertyApiGetDto; onCreate: ExtensionPropertyApiCreateDto; onUpdate: ExtensionPropertyApiUpdateDto; } interface ExtensionPropertyApiGetDto { isAvailable: boolean; } interface ExtensionPropertyApiUpdateDto { isAvailable: boolean; } interface ExtensionPropertyAttributeDto { typeSimple?: string; config: Record; } interface ExtensionPropertyDto { type?: string; typeSimple?: ePropType; displayName: LocalizableStringDto; api: ExtensionPropertyApiDto; ui: ExtensionPropertyUiDto; attributes: ExtensionPropertyAttributeDto[]; configuration: Record; defaultValue: any; formText?: string; policy?: Policy; } interface BaseDefinition { requiresAll: boolean; } interface FeatureDefinition extends BaseDefinition { features?: string[]; } interface PermissionDefinition extends BaseDefinition { permissionNames?: string[]; } interface Policy { globalFeatures: FeatureDefinition; features: FeatureDefinition; permissions: PermissionDefinition; } interface ExtensionPropertyUiDto { onTable: ExtensionPropertyUiTableDto; onCreateForm: ExtensionPropertyUiFormDto; onEditForm: ExtensionPropertyUiFormDto; lookup?: ExtensionPropertyUiLookupDto; } interface ExtensionPropertyUiFormDto { isVisible: boolean; } interface ExtensionPropertyUiLookupDto { url?: string; resultListPropertyName?: string; displayPropertyName?: string; valuePropertyName?: string; filterParamName?: string; } interface ExtensionPropertyUiTableDto { isSortable?: boolean; isVisible: boolean; } interface LocalizableStringDto { name?: string; resource?: string; } interface ModuleExtensionDto { entities: Record; configuration: Record; } interface ObjectExtensionsDto { modules: Record; enums: Record; } interface PropContributors { prop: PropContributorCallbacks>; createForm: PropContributorCallbacks>; editForm: PropContributorCallbacks>; } type objectExtensions_d_BaseDefinition = BaseDefinition; type objectExtensions_d_DisplayNameGeneratorFn = DisplayNameGeneratorFn; type objectExtensions_d_EntityExtensionDto = EntityExtensionDto; type objectExtensions_d_EntityExtensionProperties = EntityExtensionProperties; type objectExtensions_d_EntityExtensions = EntityExtensions; type objectExtensions_d_ExtensionEnumDto = ExtensionEnumDto; type objectExtensions_d_ExtensionEnumFieldDto = ExtensionEnumFieldDto; type objectExtensions_d_ExtensionPropertyApiCreateDto = ExtensionPropertyApiCreateDto; type objectExtensions_d_ExtensionPropertyApiDto = ExtensionPropertyApiDto; type objectExtensions_d_ExtensionPropertyApiGetDto = ExtensionPropertyApiGetDto; type objectExtensions_d_ExtensionPropertyApiUpdateDto = ExtensionPropertyApiUpdateDto; type objectExtensions_d_ExtensionPropertyAttributeDto = ExtensionPropertyAttributeDto; type objectExtensions_d_ExtensionPropertyDto = ExtensionPropertyDto; type objectExtensions_d_ExtensionPropertyUiDto = ExtensionPropertyUiDto; type objectExtensions_d_ExtensionPropertyUiFormDto = ExtensionPropertyUiFormDto; type objectExtensions_d_ExtensionPropertyUiLookupDto = ExtensionPropertyUiLookupDto; type objectExtensions_d_ExtensionPropertyUiTableDto = ExtensionPropertyUiTableDto; type objectExtensions_d_FeatureDefinition = FeatureDefinition; type objectExtensions_d_LocalizableStringDto = LocalizableStringDto; type objectExtensions_d_ModuleExtensionDto = ModuleExtensionDto; type objectExtensions_d_ObjectExtensionsDto = ObjectExtensionsDto; type objectExtensions_d_PermissionDefinition = PermissionDefinition; type objectExtensions_d_Policy = Policy; type objectExtensions_d_PropContributors = PropContributors; declare namespace objectExtensions_d { export type { objectExtensions_d_BaseDefinition as BaseDefinition, objectExtensions_d_DisplayNameGeneratorFn as DisplayNameGeneratorFn, objectExtensions_d_EntityExtensionDto as EntityExtensionDto, objectExtensions_d_EntityExtensionProperties as EntityExtensionProperties, objectExtensions_d_EntityExtensions as EntityExtensions, objectExtensions_d_ExtensionEnumDto as ExtensionEnumDto, objectExtensions_d_ExtensionEnumFieldDto as ExtensionEnumFieldDto, objectExtensions_d_ExtensionPropertyApiCreateDto as ExtensionPropertyApiCreateDto, objectExtensions_d_ExtensionPropertyApiDto as ExtensionPropertyApiDto, objectExtensions_d_ExtensionPropertyApiGetDto as ExtensionPropertyApiGetDto, objectExtensions_d_ExtensionPropertyApiUpdateDto as ExtensionPropertyApiUpdateDto, objectExtensions_d_ExtensionPropertyAttributeDto as ExtensionPropertyAttributeDto, objectExtensions_d_ExtensionPropertyDto as ExtensionPropertyDto, objectExtensions_d_ExtensionPropertyUiDto as ExtensionPropertyUiDto, objectExtensions_d_ExtensionPropertyUiFormDto as ExtensionPropertyUiFormDto, objectExtensions_d_ExtensionPropertyUiLookupDto as ExtensionPropertyUiLookupDto, objectExtensions_d_ExtensionPropertyUiTableDto as ExtensionPropertyUiTableDto, objectExtensions_d_FeatureDefinition as FeatureDefinition, objectExtensions_d_LocalizableStringDto as LocalizableStringDto, objectExtensions_d_ModuleExtensionDto as ModuleExtensionDto, objectExtensions_d_ObjectExtensionsDto as ObjectExtensionsDto, objectExtensions_d_PermissionDefinition as PermissionDefinition, objectExtensions_d_Policy as Policy, objectExtensions_d_PropContributors as PropContributors }; } declare class CreateInjectorPipe implements PipeTransform { transform(_: any, action: ToolbarComponent, context: HasCreateInjectorPipe): Injector; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵpipe: _angular_core.ɵɵPipeDeclaration, "createInjector", true>; } declare class ExtensionsService { readonly entityActions: EntityActionsFactory; readonly toolbarActions: ToolbarActionsFactory; readonly entityProps: EntityPropsFactory; readonly createFormProps: CreateFormPropsFactory; readonly editFormProps: EditFormPropsFactory; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵprov: _angular_core.ɵɵInjectableDeclaration>; } declare const EXTENSIONS_IDENTIFIER: InjectionToken; type ActionKeys = Extract<'entityActions' | 'toolbarActions', keyof ExtensionsService>; declare const EXTENSIONS_ACTION_TYPE: InjectionToken; declare const EXTENSIONS_ACTION_DATA: InjectionToken(token: _angular_core.Type | InjectionToken, notFoundValue?: T, flags?: _angular_core.InjectOptions) => T; index?: number; record: any; }>>; declare const EXTENSIONS_ACTION_CALLBACK: InjectionToken>; declare const PROP_DATA_STREAM: InjectionToken>; type EntityPropTypeClassMap = { [key in ePropType]: string; }; declare const ROW_RECORD: InjectionToken; type EntityPropTypeClass = Partial; declare const ENTITY_PROP_TYPE_CLASSES: InjectionToken>; declare const EXTENSIONS_FORM_PROP: InjectionToken>; declare const EXTENSIONS_FORM_PROP_DATA: InjectionToken; declare const EXTENSIBLE_FORM_VIEW_PROVIDER: { provide: typeof ControlContainer; useExisting: typeof FormGroupDirective; }; declare function mergeWithDefaultActions>(extension: F, defaultActions: InferredActionDefaults, ...contributors: InferredActionContributorCallbacks[]): void; type InferredActionDefaults = F extends EntityActionsFactory ? EntityActionDefaults : F extends ToolbarActionsFactory ? ToolbarActionDefaults : never; type InferredActionContributorCallbacks = F extends EntityActionsFactory ? EntityActionContributorCallbacks : F extends ToolbarActionsFactory ? ToolbarActionContributorCallbacks : never; declare function generateFormFromProps(propData: PropData): UntypedFormGroup; declare function createExtraPropertyValueResolver(name: string): PropCallback>; declare function mergeWithDefaultProps>(extension: F, defaultProps: InferredPropDefaults, ...contributors: InferredPropContributorCallbacks[]): void; declare function checkPolicies(injector: Injector, properties: EntityExtensionProperties): void; type InferredPropDefaults = F extends EntityPropsFactory ? EntityPropDefaults : F extends CreateFormPropsFactory ? CreateFormPropDefaults : F extends EditFormPropsFactory ? EditFormPropDefaults : never; type InferredPropContributorCallbacks = F extends EntityPropsFactory ? EntityPropContributorCallbacks : F extends CreateFormPropsFactory ? CreateFormPropContributorCallbacks : F extends EditFormPropsFactory ? EditFormPropContributorCallbacks : never; declare function getObjectExtensionEntitiesFromStore(injector: Injector, moduleKey: string): Observable; declare function mapEntitiesToContributors(injector: Injector, resource: string): rxjs.UnaryFunction, Observable>>; declare class ExtensibleModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { ActionList, CreateFormPropsFactory, CreateInjectorPipe, ENTITY_PROP_TYPE_CLASSES, EXTENSIBLE_FORM_VIEW_PROVIDER, EXTENSIONS_ACTION_CALLBACK, EXTENSIONS_ACTION_DATA, EXTENSIONS_ACTION_TYPE, EXTENSIONS_FORM_PROP, EXTENSIONS_FORM_PROP_DATA, EXTENSIONS_IDENTIFIER, EXTRA_PROPERTIES_KEY, EditFormPropsFactory, EntityAction, EntityActionList, EntityActions, EntityActionsFactory, EntityProp, EntityPropList, EntityProps, EntityPropsFactory, ExtensibleDateTimePickerComponent, ExtensibleFormComponent, ExtensibleFormMultiselectComponent, ExtensibleFormPropComponent, ExtensibleModule, ExtensibleTableComponent, ExtensibleTableRowDetailComponent, ExtensionsService, FormProp, FormPropData, FormPropList, FormProps, GridActionsComponent, objectExtensions_d as ObjectExtensions, PROP_DATA_STREAM, PageToolbarComponent, PropDataDirective, PropList, ROW_RECORD, ToolbarAction, ToolbarActionList, ToolbarActions, ToolbarActionsFactory, ToolbarComponent, checkPolicies, createExtraPropertyValueResolver, eExtensibleComponents, ePropType, generateFormFromProps, getObjectExtensionEntitiesFromStore, mapEntitiesToContributors, mergeWithDefaultActions, mergeWithDefaultProps }; export type { ActionCallback, ReadonlyActionData as ActionData, ActionKeys, ActionPredicate, CreateFormPropContributorCallback, EditFormPropContributorCallback, EntityActionContributorCallback, EntityActionOptions, EntityPropContributorCallback, EntityPropOptions, EntityPropTypeClass, FilteredWithOptions, FormPropOptions, PartialWithOptions, PropCallback, ReadonlyPropData as PropData, PropPredicate, RowDetailContext, ToolbarActionContributorCallback, ToolbarActionOptions, ToolbarComponentOptions };