import { PropType } from 'vue';
import { PaginationResult, SelectMode } from '../oio-select';
import { CascaderItem, CascaderProperties } from './model';
import { CascaderCheckedStrategy, CascaderDisplayRenderFunction } from './typing';
export declare const OioCascaderOptionsProps: {
    mode: {
        type: PropType<SelectMode | "single" | "multiple">;
        default: SelectMode;
    };
    value: {
        type: PropType<string[] | string[][]>;
        default: undefined;
    };
    mappingOptions: {
        type: BooleanConstructor;
        default: boolean;
    };
    options: {
        type: PropType<unknown[]>;
        default: never[];
    };
    filterOption: {
        type: PropType<(inputValue: any, option: any) => boolean>;
        default: undefined;
    };
    properties: {
        type: PropType<CascaderProperties>;
    };
    customFillProperties: {
        type: PropType<(<T>(option: CascaderItem<T>, index: number) => CascaderItem<T>)>;
    };
    labelsSeparator: {
        type: StringConstructor;
    };
    displayRender: {
        type: PropType<CascaderDisplayRenderFunction>;
    };
    tagRender: {
        type: FunctionConstructor;
    };
    maxTagCount: {
        type: PropType<number | "responsive">;
        default: string;
    };
    maxTagPlaceholder: {
        type: (StringConstructor | FunctionConstructor)[];
    };
    multipleCheckedStrategy: {
        type: PropType<CascaderCheckedStrategy | "SHOW_ALL" | "SHOW_CHILD" | "SHOW_PARENT">;
        default: CascaderCheckedStrategy;
    };
};
export declare const OioLazyLoadCascaderProps: {
    loading: {
        type: BooleanConstructor;
        default: undefined;
    };
    lazyLoad: {
        type: BooleanConstructor;
        default: boolean;
    };
    loadSelected: {
        type: PropType<(<T>() => T)>;
    };
    loadOptions: {
        type: PropType<(<T_1>() => PaginationResult<T_1>)>;
    };
    loadData: {
        type: PropType<(<T_2>(selectedOptions: CascaderItem<T_2>[]) => void)>;
    };
};
export declare const OioCascaderProps: {
    autofocus: {
        type: BooleanConstructor;
        default: boolean;
    };
    placeholder: {
        type: StringConstructor;
    };
    allowClear: {
        type: BooleanConstructor;
        default: boolean;
    };
    readonly: {
        type: BooleanConstructor;
        default: boolean;
    };
    disabled: {
        type: BooleanConstructor;
        default: undefined;
    };
    searchValue: {
        type: StringConstructor;
    };
    enableSearch: {
        type: BooleanConstructor;
        default: undefined;
    };
    dropdownClassName: {
        type: PropType<string | string[]>;
    };
    getTriggerContainer: {
        type: PropType<(triggerNode: Node | HTMLElement) => Node | HTMLElement>;
    };
    changeOnSelect: {
        type: BooleanConstructor;
        default: boolean;
    };
    loading: {
        type: BooleanConstructor;
        default: undefined;
    };
    lazyLoad: {
        type: BooleanConstructor;
        default: boolean;
    };
    loadSelected: {
        type: PropType<(<T>() => T)>;
    };
    loadOptions: {
        type: PropType<(<T_1>() => PaginationResult<T_1>)>;
    };
    loadData: {
        type: PropType<(<T_2>(selectedOptions: CascaderItem<T_2>[]) => void)>;
    };
    mode: {
        type: PropType<SelectMode | "single" | "multiple">;
        default: SelectMode;
    };
    value: {
        type: PropType<string[] | string[][]>;
        default: undefined;
    };
    mappingOptions: {
        type: BooleanConstructor;
        default: boolean;
    };
    options: {
        type: PropType<unknown[]>;
        default: never[];
    };
    filterOption: {
        type: PropType<(inputValue: any, option: any) => boolean>;
        default: undefined;
    };
    properties: {
        type: PropType<CascaderProperties>;
    };
    customFillProperties: {
        type: PropType<(<T>(option: CascaderItem<T>, index: number) => CascaderItem<T>)>;
    };
    labelsSeparator: {
        type: StringConstructor;
    };
    displayRender: {
        type: PropType<CascaderDisplayRenderFunction>;
    };
    tagRender: {
        type: FunctionConstructor;
    };
    maxTagCount: {
        type: PropType<number | "responsive">;
        default: string;
    };
    maxTagPlaceholder: {
        type: (StringConstructor | FunctionConstructor)[];
    };
    multipleCheckedStrategy: {
        type: PropType<CascaderCheckedStrategy | "SHOW_ALL" | "SHOW_CHILD" | "SHOW_PARENT">;
        default: CascaderCheckedStrategy;
    };
};
