import { ModuleWithProviders, Type, Provider } from '@angular/core'; import { DxFormsRootModule } from './forms-root.module'; import { DxFormGroup } from './form-group'; import { AbstractFormDefinition } from './abstract-form-definition'; import { FormInstanceDefinition } from './decorators/form-instance'; import { DxFormsFeatureModule } from './forms-feature.module'; export declare class DxFormsModuleDefinition { static forRoot(formDefinitionClasses?: Array>>): ModuleWithProviders; static forFeature(formDefinitionClasses: Array>>): ModuleWithProviders; } export interface DxFormDefinitionWithMeta { group: Type>; instances?: FormInstanceDefinition[]; instance?: FormInstanceDefinition; formDefinition: Type>; multi?: boolean; } export declare function getFormDefinitionsWithInstance(rootFormDefinitions: Array>>): Array; export declare function getFormDefinitionClasses(rootFormDefinitions: Array>>): Array>>; export declare function filterFormDefinitions(rootFormDefinitions: Array>>): Provider[]; export declare function getFormDefinitionProviders(...rootFormDefinitions: Array>>): [Array>>, Provider[]]; export declare function createFormDefinitionInstancesFactory(...instances: AbstractFormDefinition[]): AbstractFormDefinition[];