UNPKG

@mozaic-ds/vue

Version:

Mozaic-Vue is the Vue.js implementation of ADEO Design system

2,417 lines 91.7 kB
import { AllowedComponentProps } from 'vue';
import { Component } from 'vue';
import { ComponentCustomProperties } from 'vue';
import { ComponentCustomProps } from 'vue';
import { ComponentInternalInstance } from 'vue';
import { ComponentOptionsBase } from 'vue';
import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { ComponentPublicInstance } from 'vue';
import { CountryCode } from 'libphonenumber-js';
import { DebuggerEvent } from 'vue';
import { DefineComponent } from 'vue';
import { GlobalComponents } from 'vue';
import { GlobalDirectives } from 'vue';
import { nextTick } from 'vue';
import { OnCleanup } from '@vue/reactivity';
import { PublicProps } from 'vue';
import { ShallowUnwrapRef } from 'vue';
import { Slot } from 'vue';
import { VNode } from 'vue';
import { VNodeProps } from 'vue';
import { WatchOptions } from 'vue';
import { WatchStopHandle } from 'vue';

declare const __VLS_component: DefineComponent<__VLS_Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
size: "s" | "m" | "l";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLSpanElement>;

declare const __VLS_component_10: DefineComponent<__VLS_Props_18, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_18> & Readonly<{}>, {
size: "s" | "m" | "l";
type: "button" | "reset" | "submit";
appearance: "standard" | "accent" | "danger" | "inverse";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;

declare const __VLS_component_11: DefineComponent<__VLS_Props_21, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_21> & Readonly<{}>, {
size: "s" | "m";
iconPosition: "left" | "right";
appearance: "secondary" | "accent" | "inverse" | "standard";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_12: DefineComponent<__VLS_Props_24, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:open": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_24> & Readonly<{
"onUpdate:open"?: ((value: boolean) => any) | undefined;
}>, {
scroll: boolean;
closable: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_13: DefineComponent<__VLS_Props_26, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_26> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_14: DefineComponent<__VLS_Props_40, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
close: () => any;
}, string, PublicProps, Readonly<__VLS_Props_40> & Readonly<{
onClose?: (() => any) | undefined;
}>, {
status: "info" | "success" | "warning" | "error";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

declare const __VLS_component_15: DefineComponent<__VLS_Props_46, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string | number) => any;
}, string, PublicProps, Readonly<__VLS_Props_46> & Readonly<{
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
}>, {
size: "s" | "m";
clearLabel: string;
inputType: "date" | "email" | "number" | "password" | "search" | "tel" | "text";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare const __VLS_component_16: DefineComponent<__VLS_Props_47, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:open": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_47> & Readonly<{
"onUpdate:open"?: ((value: boolean) => any) | undefined;
}>, {
status: "info" | "success" | "warning" | "error";
closable: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

declare const __VLS_component_17: DefineComponent<__VLS_Props_50, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_50> & Readonly<{}>, {
position: "top" | "bottom" | "left" | "right";
pointer: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_2: DefineComponent<__VLS_Props_4, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_4> & Readonly<{}>, {
size: "s" | "m" | "l";
type: "button" | "reset" | "submit";
appearance: "standard" | "accent" | "danger" | "inverse";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLButtonElement>;

declare const __VLS_component_3: DefineComponent<__VLS_Props_5, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_5> & Readonly<{}>, {
appearance: "standard" | "accent" | "tips" | "inverse";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

declare const __VLS_component_4: DefineComponent<__VLS_Props_6, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_6> & Readonly<{}>, {
previousButtonAriaLabel: string;
nextButtonAriaLabel: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
contentContainer: HTMLDivElement;
}, HTMLDivElement>;

declare const __VLS_component_5: DefineComponent<__VLS_Props_11, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_11> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_6: DefineComponent<__VLS_Props_13, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_13> & Readonly<{}>, {
size: "s" | "m" | "l";
appearance: "primary" | "secondary" | "tertiary" | "inverse";
orientation: "vertical" | "horizontal";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_7: DefineComponent<__VLS_Props_14, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
back: () => any;
"update:open": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_14> & Readonly<{
onBack?: (() => any) | undefined;
"onUpdate:open"?: ((value: boolean) => any) | undefined;
}>, {
scroll: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
titleRef: HTMLHeadingElement;
}, any>;

declare const __VLS_component_8: DefineComponent<__VLS_Props_15, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_15> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

declare const __VLS_component_9: DefineComponent<__VLS_Props_16, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_16> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLFieldSetElement>;

/**
 * An avatar is a graphical representation of a user, entity, or group, commonly displayed as an image, initials, or an icon. It helps identify individuals or accounts in profiles, comments, chat interfaces, and user lists. Avatars can be customized with different styles, sizes, and fallback options (such as initials or placeholders) to ensure consistency and recognition across interfaces. When multiple users are represented, Avatar groups provide a compact way to display them collectively.
 */
declare type __VLS_Props = {
    /**
     * Allows to define the avatar size.
     */
    size?: 's' | 'm' | 'l';
};

/**
 * A circular progress bar visually represents progress toward a goal or completion of a process using a circular shape. It is commonly used to indicate task completion or performance metrics. The progress is displayed as a partially filled ring, often accompanied by a percentage or status indicator. Circular Progress Bars are useful for providing users with real-time feedback on ongoing actions without taking up significant screen space.
 */
declare type __VLS_Props_10 = {
    /**
     * Sets the size of the progress bar.
     */
    size?: 's' | 'm' | 'l';
    /**
     * The current value of the progress bar.
     */
    value?: number;
    /**
     * Shows either a percentage or custom content.
     */
    type?: 'percentage' | 'content';
    /**
     * Main content shown when `type` is `'content'`.
     */
    contentValue?: string;
    /**
     * Additional text shown to define the `contentValue`.
     */
    additionalInfo?: string;
};

/**
 * The Container component is designed to wrap your page or section content, typically grids or other layout elements. By default, it centers the content with a maximum width to ensure consistent alignment and spacing.
 */
declare type __VLS_Props_11 = {
    /**
     * If `true`, the container will take the full width.
     */
    fluid?: boolean;
};

/**
 * A date picker is an input component that allows users to select a date from a calendar interface or manually enter a date value. It enhances usability by providing structured date selection, reducing input errors, and ensuring format consistency. Date Pickers are commonly used in forms, booking systems, scheduling tools, and data filtering interfaces to facilitate accurate date entry.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#input).
 */
declare type __VLS_Props_12 = {
    /**
     * A unique identifier for the datepicker element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the datepicker element, typically used for form submission.
     */
    name?: string;
    /**
     * The current value of the datepicker field.
     */
    modelValue?: string | number;
    /**
     * If `true`, applies an invalid state to the datepicker.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the datepicker, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * Determines the size of the datepicker.
     */
    size?: 's' | 'm';
    /**
     * If `true`, the datepicker is read-only (cannot be edited).
     */
    readonly?: boolean;
    /**
     * If `true`, a clear button will appear when the datepicker has a value.
     */
    isClearable?: boolean;
    /**
     * The label text for the clear button.
     */
    clearLabel?: string;
};

/**
 * A divider is a visual element used to separate content or sections within an interface. It helps improve readability and organization by creating clear distinctions between groups of information. Dividers can be thin lines, thick separators, or even styled with spacing variations, adapting to different layouts. They are commonly used in menus, lists, forms, and content blocks to create a structured visual hierarchy.
 */
declare type __VLS_Props_13 = {
    /**
     * Determines the orientation of the divider.
     */
    orientation?: 'vertical' | 'horizontal';
    /**
     * Determines the appearance of the divider.
     */
    appearance?: 'primary' | 'secondary' | 'tertiary' | 'inverse';
    /**
     * Determines the size of the divider.
     */
    size?: 's' | 'm' | 'l';
};

/**
 * A drawer is a sliding panel that appears from the side of the screen, providing additional content, settings, or actions without disrupting the main view. It is often used for filtering options, or contextual details. It enhances usability by keeping interfaces clean while offering expandable functionality.
 */
declare type __VLS_Props_14 = {
    /**
     * If `true`, display the drawer.
     */
    open?: boolean;
    /**
     * Position of the drawer.
     */
    position?: 'left' | 'right';
    /**
     * If `true`, the drawer have a bigger width.
     */
    extended?: boolean;
    /**
     * If `true`, display the back button.
     */
    back?: boolean;
    /**
     * Title of the drawer.
     */
    title: string;
    /**
     * Title of the content of the drawer.
     */
    contentTitle?: string;
    /**
     * if `false`, lock the scroll when open.
     */
    scroll?: boolean;
    /**
     * if `true`, close the drawer when clicking the overlay.
     */
    closeOnOverlay?: boolean;
};

/**
 * A field label is a text element that identifies the purpose of an input field, providing users with clear guidance on what information to enter. It is typically placed above the input field and may include indicators for required or optional fields. Field Labels improve form usability, accessibility, and data entry accuracy by ensuring users understand the expected input.
 */
declare type __VLS_Props_15 = {
    /**
     * A unique identifier for the form field, used to associate the label with the form element.
     */
    id: string;
    /**
     * The text displayed as the label for the form field.
     */
    label: string;
    /**
     * Additional text displayed alongside the label, typically used to indicate if the form field is required or optional
     */
    requirementText?: string;
    /**
     * Text shown below the form field to provide additional context or instructions for the user.
     */
    helpText?: string;
    /**
     * The value of the `id` attribute set on the **helpText** element. _This value is mandatory when using a helpText in order to guarantee the accessibility of the component._
     */
    helpId?: string;
    /**
     * If `true`, applies a valid state to the form field.
     */
    isValid?: boolean;
    /**
     * If `true`, applies an invalid state to the form field.
     */
    isInvalid?: boolean;
    /**
     * If `true`, applies a loading state to the form field.
     */
    isLoading?: boolean;
    /**
     * The value of the `id` attribute set on the **validationMessage** element. _This value is mandatory when using a validationMessage in order to guarantee the accessibility of the component._
     */
    messageId?: string;
    /**
     * message displayed when the form field has a valid or invalid state, usually indicating validation or errors.
     */
    message?: string;
};

/**
 * This component creates a structured form field for group field such as Radio Group, Checkbox Group or Toggle Group with a label, optional help text, error and validation message handling.
 */
declare type __VLS_Props_16 = {
    /**
     * A unique identifier for the form field, used to associate the label with the form element.
     */
    id: string;
    /**
     * The text displayed as the legend for the form fieldset.
     */
    legend: string;
    /**
     * Additional text displayed alongside the label, typically used to indicate if the form field is required or optional
     */
    requirementText?: string;
    /**
     * Text shown below the form field to provide additional context or instructions for the user.
     */
    helpText?: string;
    /**
     * If `true`, applies a valid state to the form field.
     */
    isValid?: boolean;
    /**
     * If `true`, applies an invalid state to the form field.
     */
    isInvalid?: boolean;
    /**
     * message displayed when the form field has a valid or invalid state, usually indicating validation or errors.
     */
    message?: string;
};

/**
 * A flag is used to display meta-information about a product or service, acting as a visual indicator of the main category of content. It is typically placed at the top of an element to ensure immediate visibility.
 */
declare type __VLS_Props_17 = {
    /**
     * Label of the Flag.
     */
    label: string;
    /**
     * Allows to define the Flag appearance.
     */
    appearance?: 'danger' | 'accent' | 'inverse' | 'standard';
};

/**
 * Buttons are key interactive elements used to perform actions and can be used as standalone element, or as part of another component. Their appearance depends on the type of action required from the user and the context in which they are used.
 */
declare type __VLS_Props_18 = {
    /**
     * Defines the visual style of the icon button.
     */
    appearance?: 'standard' | 'accent' | 'danger' | 'inverse';
    /**
     * Determines the size of the icon button.
     */
    size?: 's' | 'm' | 'l';
    /**
     * If `true`, disables the icon button, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, applies a "ghost" style to the icon button.
     */
    ghost?: boolean;
    /**
     * If `true`, the icon button gets an outlined style.
     */
    outlined?: boolean;
    /**
     * Specifies the button's HTML `type` attribute.
     */
    type?: 'button' | 'reset' | 'submit';
};

/**
 * A linear progress bar (Buffer) visually represents the progress of a task along a horizontal track, often indicating both current progress and a secondary buffered state. This type of progress bar is commonly used for loading processes, file uploads, or streaming indicators, where part of the task is completed while another portion is preloaded or buffered. It provides users with real-time feedback on task advancement.
 */
declare type __VLS_Props_19 = {
    /**
     * Allows to define the progress bar size.
     */
    size?: 's' | 'm' | 'l';
    /**
     * The current value of the progress bar.
     */
    value?: number;
};

/**
 * A breadcrumb is a navigation help that displays the hierarchical path of the current page within a website or application. It helps users understand their location and allows them to navigate back to previous levels easily. Breadcrumbs improve usability and accessibility, especially in multi-level websites, dashboards, and e-commerce platforms.
 */
declare type __VLS_Props_2 = {
    /**
     * Allows to define the breadcrumb appearance.
     */
    appearance?: 'standard' | 'inverse';
    /**
     * Links of the breadcrumb.
     */
    links: Array<{
        /**
         * The label displayed for the link.
         */
        label: string;
        /**
         * URL for the link (for external links or the `to` prop for `router-link`).
         */
        href: string;
        /**
         * If `true`, the link will be rendered as a `router-link` for internal navigation (Vue Router).
         */
        router?: boolean;
    }>;
};

/**
 * A linear progress bar (Percentage) visually represents the completion of a task along a horizontal track, displaying the exact progress in percentage within the bar. It is commonly used for file uploads, installations, form completion, or any process requiring user awareness of progress. The percentage label provides clear and immediate feedback, helping users track progress with precision.
 */
declare type __VLS_Props_20 = {
    /**
     * The current value of the progress bar.
     */
    value?: number;
};

/**
 * A link is an interactive text element used to navigate between pages, sections, or external resources. It is typically underlined and styled to indicate its clickable nature. Links can be standalone or embedded within text, and they may include icons to reinforce their purpose. They are essential for navigation and content referencing in web and application interfaces.
 */
declare type __VLS_Props_21 = {
    /**
     * Position of the icon relative to the text.
     */
    iconPosition?: 'left' | 'right';
    /**
     * Allows to define the link appearance.
     */
    appearance?: 'secondary' | 'accent' | 'inverse' | 'standard';
    /**
     * Allows to define the link size.
     */
    size?: 's' | 'm';
    /**
     * URL for the link (for external links or the `to` prop for `router-link`).
     */
    href?: string;
    /**
     * Where to open the link.
     */
    target?: '_self' | '_blank' | '_parent' | '_top';
    /**
     * Specify wether the link is inline.
     */
    inline?: boolean;
    /**
     * If `true`, the link will be rendered as a `router-link` for internal navigation (Vue Router).
     */
    router?: boolean;
};

/**
 * A loader is a visual indicator used to inform users that a process is in progress, typically during data fetching, page loading, or background operations. It provides feedback that the system is working, helping to manage user expectations and reduce perceived wait time.
 */
declare type __VLS_Props_22 = {
    /**
     * Specifies the visual appearance of the loader.
     */
    appearance?: 'standard' | 'accent' | 'inverse';
    /**
     * Defines the size of the loader.
     */
    size?: 'xs' | 's' | 'm' | 'l';
    /**
     * Text to display alongside the loader when using the loader inside an `Overlay`.
     */
    text?: string;
};

/**
 * A loading overlay is a full-screen or container-level layer that indicates a process is in progress, preventing user interaction until the task is completed. It includes a progress indicator, and a message to inform users about the loading state. Loading Overlays are commonly used in data-heavy applications, form submissions, and page transitions to enhance user experience by managing wait times effectively.
 */
declare type __VLS_Props_23 = {
    /**
     * Controls the visibility of the loading overlay.
     */
    isVisible?: boolean;
    /**
     * Text of the loading overlay.
     */
    text?: string;
};

/**
 * A modal is a dialog window that appears on top of the main content, requiring user interaction before returning to the main interface. It is used to focus attention on a specific task, provide important information, or request confirmation for an action. Modals typically include a title, description, and primary/secondary actions and should be used for single, focused tasks to avoid disrupting the user experience.
 */
declare type __VLS_Props_24 = {
    /**
     * if `true`, display the modal.
     */
    open?: boolean;
    /**
     * Title of the modal.
     */
    title: string;
    /**
     * Description of the modal.
     */
    description?: string;
    /**
     * if `true`, display the close button.
     */
    closable?: boolean;
    /**
     * if `false`, lock the scroll when open.
     */
    scroll?: boolean;
    /**
     * if `true`, close the modal when clicking the overlay.
     */
    closeOnOverlay?: boolean;
};

/**
 * A Number Badge represents a numeric count, often used to indicate notifications, updates, or items requiring attention. Its distinct appearance makes it easy to spot changes at a glance, ensuring users stay informed without breaking their workflow. Badges are commonly attached to icons, buttons, or tabs to provide contextual awareness.
 */
declare type __VLS_Props_25 = {
    /**
     * Content of the badge.
     */
    label: number;
    /**
     * Allows to define the badge appearance.
     */
    appearance?: 'danger' | 'accent' | 'inverse' | 'standard';
    /**
     * Allows to define the badge size.
     */
    size?: 's' | 'm';
};

/**
 * An overlay is a semi-transparent layer that appears on top of the main content, typically used to dim the background and focus user attention on a specific element. It is often combined with modals, popovers, or loading states to create a visual separation between the foreground and background. Overlays help prevent unintended interactions while keeping the primary content accessible.
 */
declare type __VLS_Props_26 = {
    /**
     * Controls the visibility of the overlay.
     */
    isVisible?: boolean;
    /**
     * Accessible label for the overlay dialog.
     */
    dialogLabel?: string;
};

/**
 * Pagination is a navigation component that allows users to browse through large sets of content by dividing it into discrete pages. It typically includes previous and next buttons, numeric page selectors, or dropdowns to jump between pages efficiently. Pagination improves usability and performance in content-heavy applications such as tables, search results, and articles by preventing long scrolls and reducing page load times.
 */
declare type __VLS_Props_27 = {
    /**
     * A unique identifier for the pagination.
     */
    id: string;
    /**
     * The current value of the selected page.
     */
    modelValue: number;
    /**
     * If `true`, display a compact version without the select.
     */
    compact?: boolean;
    /**
     * Define the available choices for the pagination select element.
     */
    options: Array<{
        id?: string;
        text: string;
        value: number;
    }>;
    /**
     * Accessible label for the select of the pagination.
     */
    selectLabel?: string;
};

/**
 * A password input is a specialized input field used to securely enter and manage passwords. It typically masks the characters entered to protect sensitive information from being seen. It includes a toggle button to show or hide the password, improving usability while maintaining security. Password inputs are commonly used in login forms, account creation, and authentication flows.
 */
declare type __VLS_Props_28 = {
    /**
     * A unique identifier for the password input element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the password input element, typically used for form submission.
     */
    name?: string;
    /**
     * The current value of the password input field.
     */
    modelValue?: string | number;
    /**
     * A placeholder text to show in the password input when it is empty.
     */
    placeholder?: string;
    /**
     * If `true`, applies an invalid state to the password input.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the password input, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, the password input is read-only (cannot be edited).
     */
    readonly?: boolean;
    /**
     * If `true`, a clear button will appear when the password input has a value.
     */
    isClearable?: boolean;
    /**
     * The label text for the clear button.
     */
    clearLabel?: string;
    /**
     * Labels of the button displayed when showing or hiding the password.
     */
    buttonLabel?: {
        show: string;
        hide: string;
    };
};

/**
 * A phone number input is a specialized input field designed to capture and validate phone numbers, ensuring correct formatting based on country-specific dialing codes. It often includes a country selector that automatically adjusts the international dialing code. This component improves user experience by standardizing phone number entries, reducing errors, and facilitating global compatibility. It is commonly used in registration forms, authentication flows, and contact information fields.
 */
declare type __VLS_Props_29 = {
    /**
     * A unique identifier for the phone number input element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The current value of the phone number input field.
     */
    modelValue?: string;
    /**
     * Default country code for phone number formatting (e.g., 'FR', 'US', 'PT').
     */
    defaultCountry?: CountryCode;
    /**
     * A placeholder text to show in the phone number input when it is empty.
     */
    placeholder?: string;
    /**
     * Determines the size of the phone number input.
     */
    size?: 's' | 'm';
    /**
     * If `true`, applies an invalid state to the password input.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the input, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, the input is read-only (cannot be edited).
     */
    readonly?: boolean;
    /**
     * If `true`, display the country calling code prefix (+33, +1, etc.).
     */
    prefix?: boolean;
    /**
     * If `true`, display the country flag selector
     */
    flag?: boolean;
    /**
     * Locale for displaying country names (e.g., 'fr', 'en', 'es', 'pt').
     */
    locale?: string;
    /**
     * List of country codes to display in the selector. If not provided, all countries will be shown.
     */
    countryCodes?: CountryCode[];
};

declare type __VLS_Props_3 = {
    /**
     * Specifies the key of the currently selected menu item. It allows the component to highlight or style the corresponding item to indicate it is selected or currently in use.
     */
    modelValue?: number;
    /**
     * Defines the menu items, each of which can include an icon and act as a button, link, or router-link.
     */
    items: MenuItem[];
    /**
     * When enabled, adds a visible border around the wrapper to highlight or separate its content.
     */
    outlined?: boolean;
};

/**
 * A pincode input is a specialized input field used to enter short numeric codes, such as verification codes, security PINs, or authentication tokens. It typically separates each digit into individual fields to improve readability and ease of entry. This component is commonly used in two-factor authentication (2FA), password recovery, and secure access flows, ensuring a structured and user-friendly experience.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#input).
 */
declare type __VLS_Props_30 = {
    /**
     * A unique identifier for the pincode element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The number of input displayed in the pincode element.
     */
    length?: 4 | 5 | 6;
    /**
     * The name attribute for the pincode element, typically used for form submission.
     */
    name?: string;
    /**
     * The current value of the pincode field.
     */
    modelValue?: string | number;
    /**
     * If `true`, applies an invalid state to the pincode.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the pincode, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, the pincode is read-only (cannot be edited).
     */
    readonly?: boolean;
};

/**
 * A quantity selector is an input component that allows users to increment or decrement a numeric value, typically using plus (+) and minus (−) buttons. It provides a simple and efficient way to adjust quantities without manual typing, ensuring controlled input. This component is commonly used in e-commerce, inventory management, and settings where users need to specify amounts.
 */
declare type __VLS_Props_31 = {
    /**
     * A unique identifier for the quantity selector element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the quantity selector element, typically used for form submission.
     */
    name?: string;
    /**
     * The current value of the quantity selector field.
     */
    modelValue?: number;
    /**
     * If `true`, applies an invalid state to the quantity selector.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the quantity selector, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * Determines the size of the quantity selector.
     */
    size?: 's' | 'm';
    /**
     * Minimum acceptable value for the quantity selector.
     */
    min?: number;
    /**
     * Maximum acceptable value for the quantity selector.
     */
    max?: number;
    /**
     * Determines how much the value will change per click when the quantity is increased or decreased.
     */
    step?: number;
    /**
     * If `true`, the quantity selector is read-only (cannot be edited).
     */
    readonly?: boolean;
    /**
     * The label text for the increment button.
     */
    incrementlabel?: string;
    /**
     * The label text for the decrement button.
     */
    decrementLabel?: string;
};

/**
 * A radio button is a selection control that allows users to choose a single option from a list of mutually exclusive choices. Unlike checkboxes, only one option can be selected at a time within the same group. Radio Buttons are commonly used in forms, surveys, and settings where a single choice must be made.
 */
declare type __VLS_Props_32 = {
    /**
     * A unique identifier for the radio, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the radio element, typically used for form submission.
     */
    name?: string;
    /**
     * The text label displayed next to the radio.
     */
    label?: string;
    /**
     * The radio's checked state, bound via v-model.
     */
    modelValue?: boolean;
    /**
     * If `true`, applies an invalid state to the radio.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the radio, making it non-interactive.
     */
    disabled?: boolean;
};

/**
 * A radio button is a selection control that allows users to choose a single option from a list of mutually exclusive choices. Unlike checkboxes, only one option can be selected at a time within the same group. Radio Buttons are commonly used in forms, surveys, and settings where a single choice must be made.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field Group section](/docs/form-elements-field-group--docs#radio-group).
 */
declare type __VLS_Props_33 = {
    /**
     * The name attribute for the radio element, typically used for form submission.
     */
    name: string;
    /**
     * Property used to manage the values checked by v-model
     * (Do not use directly)
     */
    modelValue?: string;
    /**
     * list of properties of each radio button of the radio group
     */
    options: Array<{
        id: string;
        label: string;
        value: string;
        disabled?: boolean;
    }>;
    /**
     * If `true`, applies an invalid state to the radio group.
     */
    isInvalid?: boolean;
    /**
     * If `true`, make the form element of the group inline.
     */
    inline?: boolean;
};

/**
 * A Segmented Control allows users to switch between multiple options or views within a single container. It provides a compact and efficient way to toggle between sections without requiring a dropdown or separate navigation. Segmented Controls are commonly used in filters, tabbed navigation, and content selection to enhance user interaction and accessibility.
 */
declare type __VLS_Props_34 = {
    /**
     * The selected segment index, bound via v-model.
     */
    modelValue?: number;
    /**
     * if `true`, the segmented control take the full width.
     */
    full?: boolean;
    /**
     * Determines the size of the segmented control.
     */
    size?: 's' | 'm';
    /**
     * An array of objects that allows you to provide all the data needed to generate the content for each segment.
     */
    segments: Array<{
        /**
         * The label displayed for the segment.
         */
        label: string;
    }>;
};

/**
 * A select component allows users to choose a single option from a predefined list within a native dropdown menu. It helps simplify input by displaying only relevant choices, reducing the need for manual text entry. Select components are commonly used in forms, settings, and filters where structured selection is required.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#select).
 */
declare type __VLS_Props_35 = {
    /**
     * A unique identifier for the select, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the select element, used for form submission.
     */
    name?: string;
    /**
     * Define the available choices for the select element.
     */
    options: Array<{
        id?: string;
        text: string;
        value: string | number;
        attributes?: Record<string, string | boolean | number>;
        disabled?: boolean;
    }>;
    /**
     * The current value of the select.
     */
    modelValue?: string | number;
    /**
     * Text displayed when the select has no selected value.
     */
    placeholder?: string;
    /**
     * If `true`, the select is marked as invalid.
     */
    isInvalid?: boolean;
    /**
     * If `true`, the select is disabled and non-interactive.
     */
    disabled?: boolean;
    /**
     * Determines the size of the select.
     */
    size?: 's' | 'm';
    /**
     * If `true`, the select is read-only (cannot be edited).
     */
    readonly?: boolean;
};

/**
 * A Star rating visually represents a score or evaluation and can be used to display a rating or allow users to rate an item, such as a product or service. It serves two main purposes: collecting user feedback by enabling individuals to express their experience and providing social proof by displaying ratings from other users to assist decision-making. Rating Stars are commonly found in e-commerce, review systems, and feedback interfaces, offering a quick and intuitive way to assess quality or satisfaction.
 */
declare type __VLS_Props_36 = {
    /**
     * Determines whether the rating is interactive or read-only.
     * When true, all user interactions (click, hover, keyboard) are disabled.
     * Automatically set to true when `compact`, `href`, or `information` are provided.
     *
     */
    readonly?: boolean;
    /**
     * Defines the visual size of the star icons and the accompanying text.
     *
     */
    size?: 's' | 'm' | 'l';
    /**
     * Enables a compact display mode that shows only one star instead of five.
     * Typically used for summaries or quick visual cues.
     * When enabled, the component automatically becomes read-only.
     *
     */
    compact?: boolean;
    /**
     * Specifies the color scheme of the stars.
     *
     */
    appearance?: 'standard' | 'accent';
    /**
     * Optional text displayed next to the star rating.
     * If provided, the component automatically becomes read-only.
     */
    text?: string;
    /**
     * URL for the link (for external links or the `to` prop for `router-link`).
     */
    href?: string;
    /**
     * Where to open the link.
     */
    target?: '_self' | '_blank' | '_parent' | '_top';
    /**
     * If `true`, the link will be rendered as a `router-link` for internal navigation (Vue Router).
     */
    router?: boolean;
};

/**
 * A Status Badge is used to indicate the current status of an element, providing a clear and concise visual cue. The status can change dynamically based on updates, events, or conditions within the system. Status Badges help users quickly identify the state of an item, such as an order status, system health, or process completion. They are often color-coded to enhance readability and recognition.
 */
declare type __VLS_Props_37 = {
    /**
     * Content of the status badge
     */
    label: string;
    /**
     * Allows to define the status badge type
     */
    status?: 'info' | 'success' | 'warning' | 'error' | 'neutral';
};

/**
 * A Status dot is a small visual indicator used to represent the state or condition of an element. It is often color-coded to convey different statuses at a glance, such as availability, activity, or urgency. Status Dots are commonly found in user presence indicators, system statuses, or process tracking to provide quick, unobtrusive feedback.
 */
declare type __VLS_Props_38 = {
    /**
     * Allows to define the status dot type.
     */
    status?: 'info' | 'success' | 'warning' | 'error' | 'neutral';
    /**
     * Determines the size of the status dot.
     */
    size?: 's' | 'm' | 'l';
};

/**
 * A Status Message is a compact component that combines an icon and concise text to communicate system states or user feedback in limited interface space. The icon and message work together as a unified structure to provide clear, immediate understanding of the current status. Status Messages are designed for contexts where space is constrained but clear communication is essential, offering quick recognition through color-coded icons paired with brief, actionable text.
 */
declare type __VLS_Props_39 = {
    /**
     * Allows to define the status message style.
     */
    status?: 'info' | 'success' | 'warning' | 'error' | 'neutral' | 'inprogress';
    /**
     * Label of the status message.
     */
    label: string;
};

/**
 * Buttons are key interactive elements used to perform actions and can be used as standalone element, or as part of another component. Their appearance depends on the type of action required from the user and the context in which they are used.
 */
declare type __VLS_Props_4 = {
    /**
     * Defines the visual style of the button.
     */
    appearance?: 'standard' | 'accent' | 'danger' | 'inverse';
    /**
     * Determines the size of the button.
     */
    size?: 's' | 'm' | 'l';
    /**
     * If `true`, disables the button, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, applies a "ghost" style to the button, typically a transparent background with a border.
     */
    ghost?: boolean;
    /**
     * If `true`, the button gets an outlined style, usually with just the border and no solid background.
     */
    outlined?: boolean;
    /**
     * Controls the positioning of an icon in the button.
     */
    iconPosition?: 'left' | 'right' | 'only';
    /**
     * Specifies the button's HTML `type` attribute.
     */
    type?: 'button' | 'reset' | 'submit';
    /**
     * If `true`, a loading state is displayed.
     */
    isLoading?: boolean;
};

/**
 * A Status Notification is used to draw the user’s attention to important information that needs to be acknowledged. It often provides feedback on a process, highlights a status update, or alerts users about an issue. Notifications are typically triggered by user actions or system events and are designed to be easily noticeable while maintaining a non-intrusive experience.
 */
declare type __VLS_Props_40 = {
    /**
     * Title of the status notification.
     */
    title: string;
    /**
     * Description of the status notification.
     */
    description: string;
    /**
     * Allows to define the status notification type.
     */
    status?: 'info' | 'success' | 'warning' | 'error';
    /**
     * if `true`, display the close button.
     */
    closable?: boolean;
};

/**
 * A stepper is a navigation component that guides users through a sequence of steps in a structured process. It visually represents progress, completed steps, and upcoming steps, helping users understand their position within a workflow. Steppers are commonly used in multi-step forms, onboarding flows, checkout processes, and task completion sequences to improve clarity and reduce cognitive load.
 */
declare type __VLS_Props_41 = {
    /**
     * Current step of the stepper compact.
     */
    value?: number;
    /**
     * Maximum number of steps for the stepper compact.
     */
    maxSteps?: number;
    /**
     * Label of the stepper compact.
     */
    label: string;
    /**
     * Description displayed below the label of the stepper compact.
     */
    description?: string;
};

/**
 * A stepper is a navigation component that guides users through a sequence of steps in a structured process. It visually represents progress, completed steps, and upcoming steps, helping users understand their position within a workflow. Steppers are commonly used in multi-step forms, onboarding flows, checkout processes, and task completion sequences to improve clarity and reduce cognitive load.
 */
declare type __VLS_Props_42 = {
    /**
     * Current step of the stepper compact.
     */
    currentStep?: number;
    /**
     * Steps of the stepper inline.
     */
    steps?: Array<{
        /**
         * Label of the step.
         */
        label: string;
        /**
         * Optional additional information under the label.
         */
        additionalInfo?: string;
    }>;
};

/**
 * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.
 */
declare type __VLS_Props_43 = {
    /**
     * A description indicating the purpose of the set of tabs. Useful for improving the accessibility of the component.
     */
    description?: string;
    /**
     * If `true`, the divider will appear.
     */
    divider?: boolean;
    /**
     * If `true`, the tabs of the component will be centered.
     */
    centered?: boolean;
    /**
     * The selected tab index, bound via v-model.
     */
    modelValue?: number;
    /**
     * An array of objects that allows you to provide all the data needed to generate the content for each tab.
     */
    tabs: Array<{
        /**
         * The icon displayed for the tab from Mozaic-icon-vue.
         */
        icon?: Component;
        /**
         * The number badge displayed for the tab.
         */
        badge?: number;
        /**
         * The label displayed for the tab.
         */
        label: string;
        /**
         * If `true`, the tab will be disabled.
         */
        disabled?: boolean;
    }>;
};

/**
 * A Tag is a UI element used to filter data, categorize, select or deselect an option. It can appear standalone, in a group, or embedded within other components. Depending on its use, a tag can be interactive (clickable, removable, selectable) or static (serving as a visual indicator).
 */
declare type __VLS_Props_44 = {
    /**
     * Defines the behavior and layout of the tag.
     */
    type?: 'informative' | 'interactive' | 'contextualised' | 'removable' | 'selectable';
    /**
     * Determines the size of the tag.
     */
    size?: 's' | 'm' | 'l';
    /**
     * A unique identifier for the tag, used to associate the label with the form element. **Required** when type is 'selectable' or 'removable'.
     */
    id?: string;
    /**
     * The name attribute for the tag element, typically used for form submission. (only relevant for type: 'selectable').
     */
    name?: string;
    /**
     * The text label displayed next to the tag.
     */
    label: string;
    /**
     * The tag's checked state, bound via v-model. Used only for type: 'selectable'.
     */
    modelValue?: boolean;
    /**
     * If `true`, disables the tag, making it non-interactive. Applicable to selectable, interactive, and contextualised types.
     */
    disabled?: boolean;
    /**
     * A number displayed in the badge when the tag is contextualised.
     */
    contextualisedNumber?: number;
    /**
     * Accessible label text for the remove button in removable tags.
     */
    removableLabel?: string;
};

/**
 * A text area is an input designed for multi-line text entry, allowing users to input longer content compared to a standard text input. It is commonly used for comments, feedback, descriptions, and messaging. Text areas can be resizable or fixed in height, depending on the context, and often include placeholder text, character limits, and validation messages to guide users.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#textarea).
 */
declare type __VLS_Props_45 = {
    /**
     * A unique identifier for the textarea, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the textarea element, used for form submission.
     */
    name?: string;
    /**
     * The current value of the textarea field.
     */
    modelValue?: string | number;
    /**
     * Text displayed when the textarea is empty.
     */
    placeholder?: string;
    /**
     * If `true`, the textarea is marked as invalid.
     */
    isInvalid?: boolean;
    /**
     * If `true`, the textarea is disabled and non-interactive.
     */
    disabled?: boolean;
    /**
     * The number of visible text lines in the textarea.
     */
    rows?: number;
    /**
     * Minimum number of characters required for the textarea.
     */
    minLength?: number;
    /**
     * Maximum number of characters allowed in the textarea.
     */
    maxLength?: number;
    /**
     * If `true`, the textarea is read-only (cannot be edited).
     */
    readonly?: boolean;
};

/**
 * A text input is a single-line input that allows users to enter and edit short text-based content. It is commonly used for names, email addresses, search queries, and form entries. Text Inputs often include placeholders, validation rules, and assistive text to guide users and ensure accurate data entry.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#input).
 */
declare type __VLS_Props_46 = {
    /**
     * A unique identifier for the input element, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the input element, typically used for form submission.
     */
    name?: string;
    /**
     * The current value of the input field.
     */
    modelValue?: string | number;
    /**
     * A placeholder text to show in the input when it is empty.
     */
    placeholder?: string;
    /**
     * Defines the type of input.
     */
    inputType?: 'date' | 'email' | 'number' | 'password' | 'search' | 'tel' | 'text';
    /**
     * If `true`, applies an invalid state to the input.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the input, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * Determines the size of the input.
     */
    size?: 's' | 'm';
    /**
     * If `true`, the input is read-only (cannot be edited).
     */
    readonly?: boolean;
    /**
     * If `true`, a clear button will appear when the input has a value.
     */
    isClearable?: boolean;
    /**
     * The label text for the clear button.
     */
    clearLabel?: string;
};

/**
 * A toaster is a temporary notification that appears briefly on the screen to provide feedback or updates without interrupting the user’s workflow. It is commonly used for success messages, warnings, errors, or informational updates. Toasters can disappear automatically after a few seconds, be dismissed manually via a close button, or be removed when the user performs a relevant action. They typically include an icon, a short message, and an optional close button for better usability.
 */
declare type __VLS_Props_47 = {
    /**
     * If `true`, display the Toaster.
     */
    open?: boolean;
    /**
     * Position of the toaster.
     */
    position?: 'top' | 'bottom' | 'top-center' | 'bottom-center';
    /**
     * Description of the toaster.
     */
    description: string;
    /**
     * Allows to define the toaster style.
     */
    status?: 'info' | 'success' | 'warning' | 'error';
    /**
     * If `true`, display the close button.
     */
    closable?: boolean;
    /**
     * If `true`, display the progress bar of the duration.
     */
    progress?: boolean;
    /**
     * Duration of the toaster
     */
    timeout?: number;
};

/**
 * A toggle is a switch component that allows users to enable or disable a setting, representing a binary state such as on/off or active/inactive. It provides a quick and intuitive way to control preferences or system settings. Toggles are commonly used in settings menus, dark mode switches, and feature activations, offering an alternative to checkboxes for immediate visual feedback.
 */
declare type __VLS_Props_48 = {
    /**
     * A unique identifier for the toggle, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the toggle element, typically used for form submission.
     */
    name?: string;
    /**
     * The text label displayed next to the toggle.
     */
    label?: string;
    /**
     * The toggle's checked state, bound via v-model.
     */
    modelValue?: boolean;
    /**
     * Determines the size of the toggle.
     */
    size?: 's' | 'm';
    /**
     * If `true`, disables the toggle, making it non-interactive.
     */
    disabled?: boolean;
};

/**
 * A toggle is a switch component that allows users to enable or disable a setting, representing a binary state such as on/off or active/inactive. It provides a quick and intuitive way to control preferences or system settings. Toggles are commonly used in settings menus, dark mode switches, and feature activations, offering an alternative to checkboxes for immediate visual feedback.<br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field Group section](/docs/form-elements-field-group--docs#toggle-group).
 */
declare type __VLS_Props_49 = {
    /**
     * The name attribute for the toggle element, typically used for form submission.
     */
    name: string;
    /**
     * Property used to manage the values checked by v-model
     * (Do not use directly)
     */
    modelValue?: Array<string>;
    /**
     * List of properties of each toggle of the toggle group.
     */
    options: Array<{
        id: string;
        label: string;
        value: string;
        disabled?: boolean;
        size?: 's' | 'm';
    }>;
    /**
     * If `true`, make the form element of the group inline.
     */
    inline?: boolean;
};

/**
 * A callout is used to highlight additional information that can assist users with tips, extra details, or helpful guidance, without signaling a critical status or alert. Unlike notifications, callouts are not triggered by user actions and do not correspond to specific system states. They are designed to enhance the user experience by providing contextually relevant information that supports comprehension and usability.
 */
declare type __VLS_Props_5 = {
    /**
     * Title of the callout.
     */
    title: string;
    /**
     * Description of the callout.
     */
    description: string;
    /**
     * Allows to define the callout appearance.
     */
    appearance?: 'standard' | 'accent' | 'tips' | 'inverse';
};

/**
 * A tooltip is a small, contextual message that appears when users hover over, focus on, or tap an element, providing additional information or guidance without cluttering the interface. Tooltips are commonly used to explain icons, abbreviations, or complex actions. They typically disappear automatically when the user moves away from the trigger element.
 */
declare type __VLS_Props_50 = {
    /**
     * A unique identifier for the tooltip, used to describe the tooltip.
     */
    id: string;
    /**
     * Content of the tooltip.
     */
    text: string;
    /**
     * Determines the position of the tooltip.
     */
    position?: 'top' | 'bottom' | 'left' | 'right';
    /**
     * If `true`, the tooltip display a pointer.
     */
    pointer?: boolean;
};

/**
 * A Carousel allows users to browse through multiple items within a horizontal container, using swipe gestures on mobile or navigation controls on desktop. It is primarily used to showcase products, promotions, or visual content, offering an engaging way to explore information in a condensed and interactive format. Carousels help optimize space while keeping content visually appealing and easily accessible.
 */
declare type __VLS_Props_6 = {
    /**
     * Aria label for the previous button.
     */
    previousButtonAriaLabel?: string;
    /**
     * Aria label for the next button.
     */
    nextButtonAriaLabel?: string;
};

/**
 * A checkbox is an interactive component used to select or deselect an option, typically within a list of choices. It allows users to make multiple selections independently and is often accompanied by a label for clarity. Checkboxes are commonly used in forms, filters, settings, and preference selections to provide a simple and intuitive way to enable or disable specific options.
 */
declare type __VLS_Props_7 = {
    /**
     * A unique identifier for the checkbox, used to associate the label with the form element.
     */
    id: string;
    /**
     * The name attribute for the checkbox element, typically used for form submission.
     */
    name?: string;
    /**
     * The text label displayed next to the checkbox.
     */
    label?: string;
    /**
     * The checkbox's checked state, bound via v-model.
     */
    modelValue?: boolean;
    /**
     * Sets the checkbox to an indeterminate state (partially selected).
     */
    indeterminate?: boolean;
    /**
     * If `true`, applies an invalid state to the checkbox.
     */
    isInvalid?: boolean;
    /**
     * If `true`, disables the checkbox, making it non-interactive.
     */
    disabled?: boolean;
    /**
     * If `true`, indent the checkbox.
     */
    indented?: boolean;
};

/**
 * A checkbox is an interactive component used to select or deselect an option, typically within a list of choices. It allows users to make multiple selections independently and is often accompanied by a label for clarity. Checkboxes are commonly used in forms, filters, settings, and preference selections to provide a simple and intuitive way to enable or disable specific options. <br><br> To put a label, requierement text, help text or to apply a valid or invalid message, the examples are available in the [Field section](/docs/form-elements-field--docs#input).
 */
declare type __VLS_Props_8 = {
    /**
     * The name attribute for the checkbox element, typically used for form submission.
     */
    name: string;
    /**
     * Property used to manage the values checked by v-model
     * (Do not use directly)
     */
    modelValue?: Array<string>;
    /**
     * list of properties of each checkbox button of the checkbox group
     */
    options: Array<{
        id: string;
        label: string;
        value: string;
        disabled?: boolean;
        isInvalid?: boolean;
        indented?: boolean;
    }>;
    /**
     * If `true`, make the form element of the group inline.
     */
    inline?: boolean;
};

declare type __VLS_Props_9 = {
    /**
     * Specifies the key of the currently selected menu item. It allows the component to highlight or style the corresponding item to indicate it is selected or currently in use.
     */
    modelValue?: number;
    /**
     * Defines the menu items, each of which sets a checked state and act as a button, link, or router-link.
     */
    items: CheckListMenuItem[];
    /**
     * When enabled, adds a visible border around the wrapper to highlight or separate its content.
     */
    outlined?: boolean;
};

declare type __VLS_PublicProps = {
    modelValue: number;
} & __VLS_Props_36;

declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the image, icon or intials of the avatar.
         */
        default: VNode;
    }> & {
        /**
         * Use this slot to insert the image, icon or intials of the avatar.
         */
        default: VNode;
    };
    refs: {};
    rootEl: HTMLSpanElement;
};

declare function __VLS_template_10(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert an icon for the Button.
         */
        icon: VNode;
    }> & {
        /**
         * Use this slot to insert an icon for the Button.
         */
        icon: VNode;
    };
    refs: {};
    rootEl: HTMLButtonElement;
};

declare function __VLS_template_11(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the textual content of the Link.
         */
        default: string;
        /**
         * Use this slot to insert an icon for the Link.
         */
        icon?: VNode;
    }> & {
        /**
         * Use this slot to insert the textual content of the Link.
         */
        default: string;
        /**
         * Use this slot to insert an icon for the Link.
         */
        icon?: VNode;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_12(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert an icon next to the title of the modal.
         */
        icon?: VNode;
        /**
         * Use this slot to insert the content of the modal.
         */
        default?: VNode;
        /**
         * Use this slot to insert a link in the footer.
         */
        link?: VNode;
        /**
         * Use this slot to insert buttons in the footer.
         */
        footer?: VNode;
    }> & {
        /**
         * Use this slot to insert an icon next to the title of the modal.
         */
        icon?: VNode;
        /**
         * Use this slot to insert the content of the modal.
         */
        default?: VNode;
        /**
         * Use this slot to insert a link in the footer.
         */
        link?: VNode;
        /**
         * Use this slot to insert buttons in the footer.
         */
        footer?: VNode;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_13(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert a centered content inside the overlay.
         */
        default?: VNode;
    }> & {
        /**
         * Use this slot to insert a centered content inside the overlay.
         */
        default?: VNode;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_14(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert a button or a link in the footer
         */
        footer?: VNode;
    }> & {
        /**
         * Use this slot to insert a button or a link in the footer
         */
        footer?: VNode;
    };
    refs: {};
    rootEl: HTMLElement;
};

declare function __VLS_template_15(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert an icon in the input.
         */
        icon?: VNode;
    }> & {
        /**
         * Use this slot to insert an icon in the input.
         */
        icon?: VNode;
    };
    refs: {};
    rootEl: any;
};

declare function __VLS_template_16(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert a button or a link in the toaster
         */
        action?: VNode;
    }> & {
        /**
         * Use this slot to insert a button or a link in the toaster
         */
        action?: VNode;
    };
    refs: {};
    rootEl: HTMLElement;
};

declare function __VLS_template_17(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * The tooltip will point to the content of the slot.
         */
        default: string;
    }> & {
        /**
         * The tooltip will point to the content of the slot.
         */
        default: string;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_2(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * The content displayed in the button.
         */
        default: string;
        /**
         * Use this slot to insert an icon for the Button.
         */
        icon?: VNode;
    }> & {
        /**
         * The content displayed in the button.
         */
        default: string;
        /**
         * Use this slot to insert an icon for the Button.
         */
        icon?: VNode;
    };
    refs: {};
    rootEl: HTMLButtonElement;
};

declare function __VLS_template_3(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert an icon.
         */
        icon?: VNode;
        /**
         * Use this slot to insert a button or a link in the footer of the callout.
         */
        footer?: VNode;
    }> & {
        /**
         * Use this slot to insert an icon.
         */
        icon?: VNode;
        /**
         * Use this slot to insert a button or a link in the footer of the callout.
         */
        footer?: VNode;
    };
    refs: {};
    rootEl: HTMLElement;
};

declare function __VLS_template_4(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert a list of components to be displayed in the carousel.
         */
        default: () => VNode[];
        /**
         * Use this slot to insert the title, subtitle or link of the carousel.
         */
        header: VNode;
    }> & {
        /**
         * Use this slot to insert a list of components to be displayed in the carousel.
         */
        default: () => VNode[];
        /**
         * Use this slot to insert the title, subtitle or link of the carousel.
         */
        header: VNode;
    };
    refs: {
        contentContainer: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};

declare function __VLS_template_5(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the content of the container.
         */
        default?: VNode;
    }> & {
        /**
         * Use this slot to insert the content of the container.
         */
        default?: VNode;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_6(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the content who need a vertical divider
         */
        default?: VNode;
    }> & {
        /**
         * Use this slot to insert the content who need a vertical divider
         */
        default?: VNode;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_7(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the content of the drawer
         */
        default?: VNode;
        /**
         * Use this slot to insert buttons in the footer
         */
        footer?: VNode;
    }> & {
        /**
         * Use this slot to insert the content of the drawer
         */
        default?: VNode;
        /**
         * Use this slot to insert buttons in the footer
         */
        footer?: VNode;
    };
    refs: {
        titleRef: HTMLHeadingElement;
    };
    rootEl: any;
};

declare function __VLS_template_8(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the form element of your choice
         */
        default: VNode;
    }> & {
        /**
         * Use this slot to insert the form element of your choice
         */
        default: VNode;
    };
    refs: {};
    rootEl: HTMLDivElement;
};

declare function __VLS_template_9(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        /**
         * Use this slot to insert the form element of your choice
         */
        default: VNode;
    }> & {
        /**
         * Use this slot to insert the form element of your choice
         */
        default: VNode;
    };
    refs: {};
    rootEl: HTMLFieldSetElement;
};

declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;

declare type __VLS_TemplateResult_10 = ReturnType<typeof __VLS_template_10>;

declare type __VLS_TemplateResult_11 = ReturnType<typeof __VLS_template_11>;

declare type __VLS_TemplateResult_12 = ReturnType<typeof __VLS_template_12>;

declare type __VLS_TemplateResult_13 = ReturnType<typeof __VLS_template_13>;

declare type __VLS_TemplateResult_14 = ReturnType<typeof __VLS_template_14>;

declare type __VLS_TemplateResult_15 = ReturnType<typeof __VLS_template_15>;

declare type __VLS_TemplateResult_16 = ReturnType<typeof __VLS_template_16>;

declare type __VLS_TemplateResult_17 = ReturnType<typeof __VLS_template_17>;

declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;

declare type __VLS_TemplateResult_3 = ReturnType<typeof __VLS_template_3>;

declare type __VLS_TemplateResult_4 = ReturnType<typeof __VLS_template_4>;

declare type __VLS_TemplateResult_5 = ReturnType<typeof __VLS_template_5>;

declare type __VLS_TemplateResult_6 = ReturnType<typeof __VLS_template_6>;

declare type __VLS_TemplateResult_7 = ReturnType<typeof __VLS_template_7>;

declare type __VLS_TemplateResult_8 = ReturnType<typeof __VLS_template_8>;

declare type __VLS_TemplateResult_9 = ReturnType<typeof __VLS_template_9>;

declare type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_10<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_11<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_12<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_13<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_14<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_15<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_16<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_17<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_2<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_3<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_4<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_5<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_6<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_7<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_8<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare type __VLS_WithTemplateSlots_9<T, S> = T & {
    new (): {
        $slots: S;
    };
};

/**
 * A check-list menu is a structured vertical list where each item represents a distinct section of content. It enables users to navigate through and validate different parts of an interface in any order. Unlike linear steppers, this component offers flexibility by allowing non-sequential completion, making it ideal for user profile setup, application settings, or flexible onboarding processes where users can choose their own path through the experience.
 */
declare type CheckListMenuItem = Omit<MenuItem, 'icon'> & {
    checked: boolean;
};

export declare const MAvatar: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;

export declare const MBreadcrumb: DefineComponent<__VLS_Props_2, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_2> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const MBuiltInMenu: DefineComponent<__VLS_Props_3, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_3> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const MButton: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;

export declare const MCallout: __VLS_WithTemplateSlots_3<typeof __VLS_component_3, __VLS_TemplateResult_3["slots"]>;

export declare const MCarousel: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;

export declare const MCheckbox: DefineComponent<__VLS_Props_7, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_7> & Readonly<{
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MCheckboxGroup: DefineComponent<__VLS_Props_8, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string[]) => any;
}, string, PublicProps, Readonly<__VLS_Props_8> & Readonly<{
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MCheckListMenu: DefineComponent<__VLS_Props_9, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_9> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const MCircularProgressbar: DefineComponent<__VLS_Props_10, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_10> & Readonly<{}>, {
type: "percentage" | "content";
value: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MContainer: __VLS_WithTemplateSlots_5<typeof __VLS_component_5, __VLS_TemplateResult_5["slots"]>;

export declare const MDatepicker: DefineComponent<__VLS_Props_12, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string | number) => any;
}, string, PublicProps, Readonly<__VLS_Props_12> & Readonly<{
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
}>, {
size: "s" | "m";
clearLabel: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MDivider: __VLS_WithTemplateSlots_6<typeof __VLS_component_6, __VLS_TemplateResult_6["slots"]>;

export declare const MDrawer: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;

/**
 * A built-in menu is a structured list of navigational or interactive options, typically displayed as a vertical stack. It allows users to browse categories, access settings, or navigate through different sections of an interface.
 */
declare type MenuItem = {
    label: string;
    icon?: Component;
    href?: string;
    to?: string;
    target?: '_self' | '_blank' | '_parent' | '_top';
};

export declare const MField: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;

export declare const MFieldGroup: __VLS_WithTemplateSlots_9<typeof __VLS_component_9, __VLS_TemplateResult_9["slots"]>;

export declare const MFlag: DefineComponent<__VLS_Props_17, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_17> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MIconButton: __VLS_WithTemplateSlots_10<typeof __VLS_component_10, __VLS_TemplateResult_10["slots"]>;

export declare const MLinearProgressbarBuffer: DefineComponent<__VLS_Props_19, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_19> & Readonly<{}>, {
value: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MLinearProgressbarPercentage: DefineComponent<__VLS_Props_20, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_20> & Readonly<{}>, {
value: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MLink: __VLS_WithTemplateSlots_11<typeof __VLS_component_11, __VLS_TemplateResult_11["slots"]>;

export declare const MLoader: DefineComponent<__VLS_Props_22, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_22> & Readonly<{}>, {
size: "xs" | "s" | "m" | "l";
appearance: "standard" | "accent" | "inverse";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MLoadingOverlay: DefineComponent<__VLS_Props_23, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_23> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MModal: __VLS_WithTemplateSlots_12<typeof __VLS_component_12, __VLS_TemplateResult_12["slots"]>;

export declare const MNumberBadge: DefineComponent<__VLS_Props_25, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_25> & Readonly<{}>, {
size: "s" | "m";
appearance: "danger" | "accent" | "inverse" | "standard";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLSpanElement>;

export declare const MOverlay: __VLS_WithTemplateSlots_13<typeof __VLS_component_13, __VLS_TemplateResult_13["slots"]>;

export declare const MPagination: DefineComponent<__VLS_Props_27, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_27> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const MPasswordInput: DefineComponent<__VLS_Props_28, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string | number) => any;
}, string, PublicProps, Readonly<__VLS_Props_28> & Readonly<{
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
}>, {
clearLabel: string;
buttonLabel: {
show: string;
hide: string;
};
}, {}, {}, {}, string, ComponentProvideOptions, false, {
button: ({
$: ComponentInternalInstance;
$data: {};
$props: {
readonly appearance?: "standard" | "accent" | "danger" | "inverse" | undefined;
readonly size?: "s" | "m" | "l" | undefined;
readonly disabled?: boolean | undefined;
readonly ghost?: boolean | undefined;
readonly outlined?: boolean | undefined;
readonly iconPosition?: "left" | "right" | "only" | undefined;
readonly type?: "button" | "reset" | "submit" | undefined;
readonly isLoading?: boolean | undefined;
} & VNodeProps & AllowedComponentProps & ComponentCustomProps;
$attrs: {
[x: string]: unknown;
};
$refs: {
[x: string]: unknown;
};
$slots: Readonly<{
[name: string]: Slot<any> | undefined;
}>;
$root: ComponentPublicInstance | null;
$parent: ComponentPublicInstance | null;
$host: Element | null;
$emit: (event: string, ...args: any[]) => void;
$el: HTMLButtonElement;
$options: ComponentOptionsBase<Readonly<{
appearance?: "standard" | "accent" | "danger" | "inverse";
size?: "s" | "m" | "l";
disabled?: boolean;
ghost?: boolean;
outlined?: boolean;
iconPosition?: "left" | "right" | "only";
type?: "button" | "reset" | "submit";
isLoading?: boolean;
}> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
size: "s" | "m" | "l";
type: "button" | "reset" | "submit";
appearance: "standard" | "accent" | "danger" | "inverse";
}, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
beforeCreate?: (() => void) | (() => void)[];
created?: (() => void) | (() => void)[];
beforeMount?: (() => void) | (() => void)[];
mounted?: (() => void) | (() => void)[];
beforeUpdate?: (() => void) | (() => void)[];
updated?: (() => void) | (() => void)[];
activated?: (() => void) | (() => void)[];
deactivated?: (() => void) | (() => void)[];
beforeDestroy?: (() => void) | (() => void)[];
beforeUnmount?: (() => void) | (() => void)[];
destroyed?: (() => void) | (() => void)[];
unmounted?: (() => void) | (() => void)[];
renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
};
$forceUpdate: () => void;
$nextTick: nextTick;
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
} & Readonly<{
size: "s" | "m" | "l";
type: "button" | "reset" | "submit";
appearance: "standard" | "accent" | "danger" | "inverse";
}> & Omit<Readonly<{
appearance?: "standard" | "accent" | "danger" | "inverse";
size?: "s" | "m" | "l";
disabled?: boolean;
ghost?: boolean;
outlined?: boolean;
iconPosition?: "left" | "right" | "only";
type?: "button" | "reset" | "submit";
isLoading?: boolean;
}> & Readonly<{}>, "size" | "type" | "appearance"> & ShallowUnwrapRef<    {}> & {} & ComponentCustomProperties & {} & {
$slots: Readonly<{
default: string;
icon?: VNode;
}> & {
default: string;
icon?: VNode;
};
}) | null;
}, any>;

export declare const MPhoneNumber: DefineComponent<__VLS_Props_29, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: string) => any;
valid: (isValid: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_29> & Readonly<{
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
onValid?: ((isValid: boolean) => any) | undefined;
}>, {
size: "s" | "m";
modelValue: string;
defaultCountry: CountryCode;
prefix: boolean;
flag: boolean;
locale: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MPincode: DefineComponent<__VLS_Props_30, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string) => any;
}, string, PublicProps, Readonly<__VLS_Props_30> & Readonly<{
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
}>, {
length: 4 | 5 | 6;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MQuantitySelector: DefineComponent<__VLS_Props_31, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_31> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {
size: "s" | "m";
name: string;
modelValue: number;
step: number;
min: number;
max: number;
incrementlabel: string;
decrementLabel: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MRadio: DefineComponent<__VLS_Props_32, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_32> & Readonly<{
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MRadioGroup: DefineComponent<__VLS_Props_33, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string) => any;
}, string, PublicProps, Readonly<__VLS_Props_33> & Readonly<{
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MSegmentedControl: DefineComponent<__VLS_Props_34, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_34> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {
size: "s" | "m";
modelValue: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MSelect: DefineComponent<__VLS_Props_35, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string | number) => any;
}, string, PublicProps, Readonly<__VLS_Props_35> & Readonly<{
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
}>, {
size: "s" | "m";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MStarRating: DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {
size: "s" | "m" | "l";
appearance: "standard" | "accent";
readonly: boolean;
compact: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MStatusBadge: DefineComponent<__VLS_Props_37, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_37> & Readonly<{}>, {
status: "info" | "success" | "warning" | "error" | "neutral";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MStatusDot: DefineComponent<__VLS_Props_38, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_38> & Readonly<{}>, {
status: "info" | "success" | "warning" | "error" | "neutral";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLSpanElement>;

export declare const MStatusMessage: DefineComponent<__VLS_Props_39, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_39> & Readonly<{}>, {
status: "info" | "success" | "warning" | "error" | "neutral" | "inprogress";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MStatusNotification: __VLS_WithTemplateSlots_14<typeof __VLS_component_14, __VLS_TemplateResult_14["slots"]>;

export declare const MStepperCompact: DefineComponent<__VLS_Props_41, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_41> & Readonly<{}>, {
value: number;
maxSteps: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MStepperInline: DefineComponent<__VLS_Props_42, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_42> & Readonly<{}>, {
currentStep: number;
steps: Array<{
/**
* Label of the step.
*/
label: string;
/**
* Optional additional information under the label.
*/
additionalInfo?: string;
}>;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLElement>;

export declare const MTabs: DefineComponent<__VLS_Props_43, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: number) => any;
}, string, PublicProps, Readonly<__VLS_Props_43> & Readonly<{
"onUpdate:modelValue"?: ((value: number) => any) | undefined;
}>, {
modelValue: number;
divider: boolean;
}, {}, {}, {}, string, ComponentProvideOptions, false, {
tab: HTMLButtonElement;
}, HTMLElement>;

export declare const MTag: DefineComponent<__VLS_Props_44, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: boolean) => any;
"remove-tag": (id: string) => any;
}, string, PublicProps, Readonly<__VLS_Props_44> & Readonly<{
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
"onRemove-tag"?: ((id: string) => any) | undefined;
}>, {
type: "informative" | "interactive" | "contextualised" | "removable" | "selectable";
contextualisedNumber: number;
removableLabel: string;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MTextArea: DefineComponent<__VLS_Props_45, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string | number) => any;
}, string, PublicProps, Readonly<__VLS_Props_45> & Readonly<{
"onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
}>, {
rows: number;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MTextInput: __VLS_WithTemplateSlots_15<typeof __VLS_component_15, __VLS_TemplateResult_15["slots"]>;

export declare const MToaster: __VLS_WithTemplateSlots_16<typeof __VLS_component_16, __VLS_TemplateResult_16["slots"]>;

export declare const MToggle: DefineComponent<__VLS_Props_48, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: boolean) => any;
}, string, PublicProps, Readonly<__VLS_Props_48> & Readonly<{
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
}>, {
size: "s" | "m";
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

export declare const MToggleGroup: DefineComponent<__VLS_Props_49, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
"update:modelValue": (value: string[]) => any;
}, string, PublicProps, Readonly<__VLS_Props_49> & Readonly<{
"onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;

export declare const MTooltip: __VLS_WithTemplateSlots_17<typeof __VLS_component_17, __VLS_TemplateResult_17["slots"]>;

export { }