import { SynChangeEvent, SynClearEvent, SynInputEvent, SynFocusEvent, SynBlurEvent, SynShowEvent, SynAfterShowEvent, SynHideEvent, SynAfterHideEvent, SynInvalidEvent, SynErrorEvent } from '@synergy-design-system/components';
import { default as SynCombobox } from '@synergy-design-system/components/components/combobox/combobox.component.js';
export type { SynChangeEvent } from '@synergy-design-system/components';
export type { SynClearEvent } from '@synergy-design-system/components';
export type { SynInputEvent } from '@synergy-design-system/components';
export type { SynFocusEvent } from '@synergy-design-system/components';
export type { SynBlurEvent } from '@synergy-design-system/components';
export type { SynShowEvent } from '@synergy-design-system/components';
export type { SynAfterShowEvent } from '@synergy-design-system/components';
export type { SynHideEvent } from '@synergy-design-system/components';
export type { SynAfterHideEvent } from '@synergy-design-system/components';
export type { SynInvalidEvent } from '@synergy-design-system/components';
export type { SynErrorEvent } from '@synergy-design-system/components';
declare const _default: typeof __VLS_export;
export default _default;
declare const __VLS_export: __VLS_WithSlots<import('vue').DefineComponent<{
    /**
     * The name of the combobox, submitted as a name/value pair with form data.
     */
    name?: SynCombobox["name"];
    /**
     * The combobox's size.
     */
    size?: SynCombobox["size"];
    /**
     * Placeholder text to show as a hint when the combobox is empty.
     */
    placeholder?: SynCombobox["placeholder"];
    /**
     * Disables the combobox control.
     */
    disabled?: SynCombobox["disabled"];
    /**
     * Sets the combobox to a readonly state.
     */
    readonly?: SynCombobox["readonly"];
    /**
     * Adds a clear button when the combobox is not empty.
     */
    clearable?: SynCombobox["clearable"];
    /**
  * Indicates whether or not the combobox is open.
  You can toggle this attribute to show and hide the listbox, or you can use the `show()`
  and `hide()` methods and this attribute will reflect the combobox's open state.
   */
    open?: SynCombobox["open"];
    /**
     * The combobox's label.
     * If you need to display HTML, use the `label` slot instead.
     */
    label?: SynCombobox["label"];
    /**
     * The maximum length of input that will be considered valid.
     */
    maxlength?: SynCombobox["maxlength"];
    /**
  * The preferred placement of the combobox's menu.
  Note that the actual placement may vary as needed to keep the listbox inside of the viewport.
   */
    placement?: SynCombobox["placement"];
    /**
     * The combobox's help text.
     * If you need to display HTML, use the `help-text` slot instead.
     */
    helpText?: SynCombobox["helpText"];
    /**
  * By default, form controls are associated with the nearest containing `<form>` element.
  This attribute allows you to place the form control outside of a form and associate it
  with the form that has this `id`.
  The form must be in the same document or shadow root for this to work.
   */
    form?: SynCombobox["form"];
    /**
     * The combobox's required attribute.
     */
    required?: SynCombobox["required"];
    /**
  * When set to `true`, restricts the combobox to only allow selection from the available options.
  Users will not be able to enter custom values that are not present in the list.
  This will always be true, if `multiple` is active.
   */
    restricted?: SynCombobox["restricted"];
    /**
  * Allows more than one option to be selected.
  If `multiple` is set, the combobox will always be `restricted` to the available options
   */
    multiple?: SynCombobox["multiple"];
    /**
  * A function that customizes the rendered option.
  * The first argument is the option, the second
  is the query string, which is typed into the combobox.
  The function should return either a Lit TemplateResult or a string containing trusted HTML
  to render in the shown list of filtered options.
  If the query string should be highlighted use the `highlightOptionRenderer` function.
   */
    getOption?: SynCombobox["getOption"];
    /**
  * A function used to filter options in the combobox component.
  The default filter method is a case- and diacritic-insensitive string comparison.
   */
    filter?: SynCombobox["filter"];
    /**
  * The delimiter to use when setting the value when `multiple` is enabled.
  The default is a space ' ', but you can set it to a comma or other character(s).
   */
    delimiter?: SynCombobox["delimiter"];
    /**
  * The maximum number of selected options to show when `multiple` is true.
  * After the maximum, "+n" will be shown to
  indicate the number of additional items that are selected.
  * Set to 0 to remove the limit.
   */
    maxOptionsVisible?: SynCombobox["maxOptionsVisible"];
    /**
  * A function that customizes the tags to be rendered when `multiple` is true.
  * The first argument is the option, the second
  is the current tag's index.
  * The function should return either a Lit TemplateResult or a string containing trusted HTML of the symbol to render at
  the specified value.
   */
    getTag?: SynCombobox["getTag"];
    /**
  * The current value of the combobox, submitted as a name/value pair with form data.
  * When `multiple` is enabled, the
  value attribute will be a list of values  separated by the delimiter, based on the options selected, and the value property will
  be an array.
  * **For this reason, values must not contain the delimiter character.**
   */
    value?: SynCombobox["value"];
    /**
     * Support for two way data binding
     */
    modelValue?: SynCombobox["value"];
}, {
    nativeElement: import('vue').Ref<SynCombobox | undefined, SynCombobox | undefined>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "syn-show": (e: SynShowEvent) => any;
    "syn-after-show": (e: SynAfterShowEvent) => any;
    "syn-hide": (e: SynHideEvent) => any;
    "syn-after-hide": (e: SynAfterHideEvent) => any;
    "syn-blur": (e: SynBlurEvent) => any;
    "syn-focus": (e: SynFocusEvent) => any;
    "syn-invalid": (e: SynInvalidEvent) => any;
    "syn-change": (e: SynChangeEvent) => any;
    "syn-input": (e: SynInputEvent) => any;
    "update:modelValue": (newValue: string | number | (string | number)[]) => any;
    "syn-clear": (e: SynClearEvent) => any;
    "syn-error": (e: SynErrorEvent) => any;
}, string, import('vue').PublicProps, Readonly<{
    /**
     * The name of the combobox, submitted as a name/value pair with form data.
     */
    name?: SynCombobox["name"];
    /**
     * The combobox's size.
     */
    size?: SynCombobox["size"];
    /**
     * Placeholder text to show as a hint when the combobox is empty.
     */
    placeholder?: SynCombobox["placeholder"];
    /**
     * Disables the combobox control.
     */
    disabled?: SynCombobox["disabled"];
    /**
     * Sets the combobox to a readonly state.
     */
    readonly?: SynCombobox["readonly"];
    /**
     * Adds a clear button when the combobox is not empty.
     */
    clearable?: SynCombobox["clearable"];
    /**
  * Indicates whether or not the combobox is open.
  You can toggle this attribute to show and hide the listbox, or you can use the `show()`
  and `hide()` methods and this attribute will reflect the combobox's open state.
   */
    open?: SynCombobox["open"];
    /**
     * The combobox's label.
     * If you need to display HTML, use the `label` slot instead.
     */
    label?: SynCombobox["label"];
    /**
     * The maximum length of input that will be considered valid.
     */
    maxlength?: SynCombobox["maxlength"];
    /**
  * The preferred placement of the combobox's menu.
  Note that the actual placement may vary as needed to keep the listbox inside of the viewport.
   */
    placement?: SynCombobox["placement"];
    /**
     * The combobox's help text.
     * If you need to display HTML, use the `help-text` slot instead.
     */
    helpText?: SynCombobox["helpText"];
    /**
  * By default, form controls are associated with the nearest containing `<form>` element.
  This attribute allows you to place the form control outside of a form and associate it
  with the form that has this `id`.
  The form must be in the same document or shadow root for this to work.
   */
    form?: SynCombobox["form"];
    /**
     * The combobox's required attribute.
     */
    required?: SynCombobox["required"];
    /**
  * When set to `true`, restricts the combobox to only allow selection from the available options.
  Users will not be able to enter custom values that are not present in the list.
  This will always be true, if `multiple` is active.
   */
    restricted?: SynCombobox["restricted"];
    /**
  * Allows more than one option to be selected.
  If `multiple` is set, the combobox will always be `restricted` to the available options
   */
    multiple?: SynCombobox["multiple"];
    /**
  * A function that customizes the rendered option.
  * The first argument is the option, the second
  is the query string, which is typed into the combobox.
  The function should return either a Lit TemplateResult or a string containing trusted HTML
  to render in the shown list of filtered options.
  If the query string should be highlighted use the `highlightOptionRenderer` function.
   */
    getOption?: SynCombobox["getOption"];
    /**
  * A function used to filter options in the combobox component.
  The default filter method is a case- and diacritic-insensitive string comparison.
   */
    filter?: SynCombobox["filter"];
    /**
  * The delimiter to use when setting the value when `multiple` is enabled.
  The default is a space ' ', but you can set it to a comma or other character(s).
   */
    delimiter?: SynCombobox["delimiter"];
    /**
  * The maximum number of selected options to show when `multiple` is true.
  * After the maximum, "+n" will be shown to
  indicate the number of additional items that are selected.
  * Set to 0 to remove the limit.
   */
    maxOptionsVisible?: SynCombobox["maxOptionsVisible"];
    /**
  * A function that customizes the tags to be rendered when `multiple` is true.
  * The first argument is the option, the second
  is the current tag's index.
  * The function should return either a Lit TemplateResult or a string containing trusted HTML of the symbol to render at
  the specified value.
   */
    getTag?: SynCombobox["getTag"];
    /**
  * The current value of the combobox, submitted as a name/value pair with form data.
  * When `multiple` is enabled, the
  value attribute will be a list of values  separated by the delimiter, based on the options selected, and the value property will
  be an array.
  * **For this reason, values must not contain the delimiter character.**
   */
    value?: SynCombobox["value"];
    /**
     * Support for two way data binding
     */
    modelValue?: SynCombobox["value"];
}> & Readonly<{
    "onSyn-show"?: ((e: SynShowEvent) => any) | undefined;
    "onSyn-after-show"?: ((e: SynAfterShowEvent) => any) | undefined;
    "onSyn-hide"?: ((e: SynHideEvent) => any) | undefined;
    "onSyn-after-hide"?: ((e: SynAfterHideEvent) => any) | undefined;
    "onSyn-blur"?: ((e: SynBlurEvent) => any) | undefined;
    "onSyn-focus"?: ((e: SynFocusEvent) => any) | undefined;
    "onSyn-invalid"?: ((e: SynInvalidEvent) => any) | undefined;
    "onSyn-change"?: ((e: SynChangeEvent) => any) | undefined;
    "onSyn-input"?: ((e: SynInputEvent) => any) | undefined;
    "onUpdate:modelValue"?: ((newValue: string | number | (string | number)[]) => any) | undefined;
    "onSyn-clear"?: ((e: SynClearEvent) => any) | undefined;
    "onSyn-error"?: ((e: SynErrorEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>, {
    default?: (props: {}) => any;
}>;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
