import { PzFormSelectOption, PzFormSelectValue } from '../shared/types';
import { PzMultiSelectProps } from './types';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        selected?(_: {
            selectedOptions: PzFormSelectOption[];
            placeholder: string;
            count: number;
        }): any;
        default?(_: {
            option: PzFormSelectOption;
            selected: boolean;
            disabled: boolean;
        }): any;
    };
    refs: {
        triggerRef: HTMLButtonElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<PzMultiSelectProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    "update:modelValue": (value: PzFormSelectValue[]) => any;
}, string, import('vue').PublicProps, Readonly<PzMultiSelectProps> & Readonly<{
    "onUpdate:modelValue"?: ((value: PzFormSelectValue[]) => any) | undefined;
}>, {
    label: string;
    disabled: boolean;
    required: boolean;
    placeholder: string;
    width: string;
    modelValue: PzFormSelectValue[];
    selectedLabel: string;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    triggerRef: HTMLButtonElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
