import { SynValidate } from '@synergy-design-system/components';
type __VLS_Props = {
    /**
  * The variant that should be used to show validation alerts.
  
  The following variants are supported:
  - **native** (default): Uses the native browser validation, usually a browser tooltip.
  - **inline**: Show the validation message underneath the element, using a `<syn-alert>`
   */
    variant?: SynValidate['variant'];
    /**
     * Do not show the error icon when using the inline variant validation
     */
    hideIcon?: SynValidate['hideIcon'];
    /**
  * Defines the events that trigger the validation.
  `invalid` will always automatically be included.
  You may also use the `live` keyword to validate on every input change.
  `live` will make sure to listen to the `invalid`, `input` and `blur` events.
  
  Please have a look at the [documentation for native form validation](https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation)
  and [the use of form invalid events](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/invalid_event) for further information.
   */
    on?: SynValidate['on'];
    /**
  * Custom validation message to be displayed when the input is invalid.
  Will override the default browser validation message.
  Set to an empty string to reset the validation message.
   */
    customValidationMessage?: SynValidate['customValidationMessage'];
    /**
  * Set this to true to validate the input immediately when it is rendered.
  Best used with a `variant` of `inline`.
  When setting eager, the input will not be focused automatically.
  
  When using a `variant` of `native` the browser will focus
  the last eager field as it is using a tooltip.
  In this case it is better to just provide one eager field.
   */
    eager?: SynValidate['eager'];
};
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
    };
    refs: {
        nativeElement: unknown;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {
    nativeElement: import('vue').Ref<SynValidate | undefined, SynValidate | undefined>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    nativeElement: unknown;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
