import type { ExtractPublicPropTypes, MaybeArray } from '../../_utils'; import type { OnUpdateValue } from './interface'; import { type CSSProperties, type PropType, type SlotsType, type VNode } from 'vue'; export declare const switchProps: { readonly size: { readonly type: PropType<"small" | "medium" | "large">; readonly default: "medium"; }; readonly value: { readonly type: PropType; readonly default: undefined; }; readonly loading: BooleanConstructor; readonly defaultValue: { readonly type: PropType; readonly default: false; }; readonly disabled: { readonly type: PropType; readonly default: undefined; }; readonly round: { readonly type: BooleanConstructor; readonly default: true; }; readonly 'onUpdate:value': PropType>; readonly onUpdateValue: PropType>; readonly checkedValue: { readonly type: PropType; readonly default: true; }; readonly uncheckedValue: { readonly type: PropType; readonly default: false; }; readonly railStyle: PropType<(params: { focused: boolean; checked: boolean; }) => string | CSSProperties>; readonly rubberBand: { readonly type: BooleanConstructor; readonly default: true; }; /** @deprecated */ readonly onChange: PropType | undefined>; readonly theme: PropType>; readonly themeOverrides: PropType>>; readonly builtinThemeOverrides: PropType>>; }; export type SwitchProps = ExtractPublicPropTypes; export interface SwitchSlots { default?: () => VNode[]; checked?: () => VNode[]; 'checked-icon'?: () => VNode[]; icon?: () => VNode[]; unchecked?: () => VNode[]; 'unchecked-icon'?: () => VNode[]; } declare const _default: import("vue").DefineComponent; readonly default: "medium"; }; readonly value: { readonly type: PropType; readonly default: undefined; }; readonly loading: BooleanConstructor; readonly defaultValue: { readonly type: PropType; readonly default: false; }; readonly disabled: { readonly type: PropType; readonly default: undefined; }; readonly round: { readonly type: BooleanConstructor; readonly default: true; }; readonly 'onUpdate:value': PropType>; readonly onUpdateValue: PropType>; readonly checkedValue: { readonly type: PropType; readonly default: true; }; readonly uncheckedValue: { readonly type: PropType; readonly default: false; }; readonly railStyle: PropType<(params: { focused: boolean; checked: boolean; }) => string | CSSProperties>; readonly rubberBand: { readonly type: BooleanConstructor; readonly default: true; }; /** @deprecated */ readonly onChange: PropType | undefined>; readonly theme: PropType>; readonly themeOverrides: PropType>>; readonly builtinThemeOverrides: PropType>>; }>, { handleClick: () => void; handleBlur: () => void; handleFocus: () => void; handleKeyup: (e: KeyboardEvent) => void; handleKeydown: (e: KeyboardEvent) => void; mergedRailStyle: import("vue").ComputedRef; pressed: import("vue").Ref; mergedClsPrefix: import("vue").Ref; mergedValue: import("vue").ComputedRef; checked: import("vue").ComputedRef; mergedDisabled: import("vue").ComputedRef; cssVars: import("vue").ComputedRef<{ '--n-bezier': string; '--n-button-border-radius': string; '--n-button-box-shadow': string; '--n-button-color': string; '--n-button-width': string; '--n-button-width-pressed': string; '--n-button-height': string; '--n-height': string; '--n-offset': string; '--n-opacity-disabled': string; '--n-rail-border-radius': string; '--n-rail-color': string; '--n-rail-color-active': string; '--n-rail-height': string; '--n-rail-width': string; '--n-width': string; '--n-box-shadow-focus': string; '--n-loading-color': string; '--n-text-color': string; '--n-icon-color': string; }> | undefined; themeClass: import("vue").Ref | undefined; onRender: (() => void) | undefined; }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; readonly default: "medium"; }; readonly value: { readonly type: PropType; readonly default: undefined; }; readonly loading: BooleanConstructor; readonly defaultValue: { readonly type: PropType; readonly default: false; }; readonly disabled: { readonly type: PropType; readonly default: undefined; }; readonly round: { readonly type: BooleanConstructor; readonly default: true; }; readonly 'onUpdate:value': PropType>; readonly onUpdateValue: PropType>; readonly checkedValue: { readonly type: PropType; readonly default: true; }; readonly uncheckedValue: { readonly type: PropType; readonly default: false; }; readonly railStyle: PropType<(params: { focused: boolean; checked: boolean; }) => string | CSSProperties>; readonly rubberBand: { readonly type: BooleanConstructor; readonly default: true; }; /** @deprecated */ readonly onChange: PropType | undefined>; readonly theme: PropType>; readonly themeOverrides: PropType>>; readonly builtinThemeOverrides: PropType>>; }>> & Readonly<{}>, { readonly value: string | number | boolean | undefined; readonly size: "small" | "medium" | "large"; readonly disabled: boolean | undefined; readonly round: boolean; readonly loading: boolean; readonly defaultValue: string | number | boolean; readonly checkedValue: string | number | boolean; readonly uncheckedValue: string | number | boolean; readonly rubberBand: boolean; }, SlotsType, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default;