import { ConfigPropertyTypes, OptionsType, SchemaOptionsType, KosConfigProperty } from '../../models';
import { ChangeEvent } from 'react';

type SelectCallback = string | ChangeEvent<HTMLSelectElement>;
export type OptionsTransformer = (options?: OptionsType[]) => any[];
type KosConfigProp = KosConfigProperty<ConfigPropertyTypes> | KosConfigProperty<string> | KosConfigProperty<number> | KosConfigProperty<boolean>;
interface Props {
    configProperty?: KosConfigProp;
    optionsTransformer?: OptionsTransformer;
}
export declare const useConfigProperty: <T extends object = any>({ configProperty, optionsTransformer, }: Props) => {
    configSelectProps: {
        onChange: (e: SelectCallback) => void;
        value: string | undefined;
        options: OptionsType[] | T[];
    };
    ready: boolean;
    error: string;
    value?: string | undefined;
    displayValue?: string | undefined;
    significantValue?: any;
    unit?: string | undefined;
    options?: OptionsType[] | undefined;
    mappedOptions?: T[] | undefined;
    updateProperty?: ((value: string) => void) | undefined;
    displayOptions?: SchemaOptionsType | undefined;
};
export {};
//# sourceMappingURL=use-config-property.d.ts.map