import { Type } from '@angular/core';
import { PropertiesControl } from '../../../../interfaces';
import { PropertiesControlBase } from '../propertiesControlBase';
import * as i0 from "@angular/core";
/**
 * Component used for displaying default generic properties control, displaying specified properties
 */
export declare class DefaultGenericPropertiesControlComponent<TOptions = any> extends PropertiesControlBase<TOptions> implements PropertiesControl<TOptions> {
    /**
     * Array of properties that should be displayed by this component
     */
    properties: string[];
    static ɵfac: i0.ɵɵFactoryDeclaration<DefaultGenericPropertiesControlComponent<any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DefaultGenericPropertiesControlComponent<any>, "default-generic-properties-control", never, { "properties": { "alias": "properties"; "required": false; }; }, {}, never, never, false, never>;
}
/**
 * Gets generic properties control component for specific properties
 * @param properties - Array of properties which will be displayed in generic properties control
 */
export declare function genericPropertiesControlFor<TModel>(properties: (Extract<keyof TModel, string>)[]): Type<PropertiesControl>;
//# sourceMappingURL=genericPropertiesControl.component.d.ts.map