import type { ButtonSize } from './NeButton.vue';
export type FilterKind = 'radio' | 'checkbox';
export type FilterOption = {
    id: string;
    label: string;
    description?: string;
    disabled?: boolean;
};
export interface Props {
    label: string;
    options: FilterOption[];
    kind: FilterKind;
    clearFilterLabel: string;
    openMenuAriaLabel: string;
    showClearFilter?: boolean;
    showSelectionCount?: boolean;
    noOptionsLabel: string;
    showOptionsFilter?: boolean;
    optionsFilterPlaceholder?: string;
    maxOptionsShown?: number;
    moreOptionsHiddenLabel: string;
    alignToRight?: boolean;
    size?: ButtonSize;
    disabled?: boolean;
    id?: string;
}
type __VLS_Props = Props;
type __VLS_PublicProps = __VLS_Props & {
    modelValue?: string[];
};
declare var __VLS_16: {}, __VLS_18: {};
type __VLS_Slots = {} & {
    button?: (props: typeof __VLS_16) => any;
} & {
    label?: (props: typeof __VLS_18) => any;
};
declare const __VLS_component: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (value: string[] | undefined) => any;
}, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
    "onUpdate:modelValue"?: ((value: string[] | undefined) => any) | undefined;
}>, {
    size: ButtonSize;
    disabled: boolean;
    id: string;
    maxOptionsShown: number;
    alignToRight: boolean;
    showClearFilter: boolean;
    showSelectionCount: boolean;
    showOptionsFilter: boolean;
    optionsFilterPlaceholder: string;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
//# sourceMappingURL=NeDropdownFilter.vue.d.ts.map