UNPKG

naive-ui

Version:

A Vue 3 Component Library. Fairly Complete, Theme Customizable, Uses TypeScript, Fast

53 lines (52 loc) 2.1 kB
import { type ComputedRef, type ExtractPropTypes, type PropType, type Ref } from 'vue'; import type { MaybeArray } from '../../_utils'; import type { OnUpdateValue } from './interface'; export declare const radioBaseProps: { readonly name: StringConstructor; readonly value: { readonly type: PropType<string | number | boolean>; readonly default: "on"; }; readonly checked: { readonly type: PropType<boolean | undefined>; readonly default: undefined; }; readonly defaultChecked: BooleanConstructor; readonly disabled: { readonly type: PropType<boolean | undefined>; readonly default: undefined; }; readonly label: StringConstructor; readonly size: PropType<"small" | "medium" | "large">; readonly onUpdateChecked: PropType<undefined | MaybeArray<(value: boolean) => void>>; readonly 'onUpdate:checked': PropType<undefined | MaybeArray<(value: boolean) => void>>; readonly checkedValue: { readonly type: PropType<boolean | undefined>; readonly default: undefined; }; }; export interface RadioGroupInjection { mergedClsPrefixRef: Ref<string>; nameRef: Ref<string | undefined>; valueRef: Ref<string | number | boolean | null>; mergedSizeRef: Ref<'small' | 'medium' | 'large'>; disabledRef: Ref<boolean>; doUpdateValue: OnUpdateValue; } export declare const radioGroupInjectionKey: import("vue").InjectionKey<RadioGroupInjection>; export interface UseRadio { mergedClsPrefix: Ref<string>; inputRef: Ref<HTMLElement | null>; labelRef: Ref<HTMLElement | null>; mergedName: Ref<string | undefined>; mergedDisabled: Ref<boolean>; renderSafeChecked: Ref<boolean>; focus: Ref<boolean>; mergedSize: ComputedRef<'small' | 'medium' | 'large'>; handleRadioInputChange: () => void; handleRadioInputBlur: () => void; handleRadioInputFocus: () => void; } declare function setup(props: ExtractPropTypes<typeof radioBaseProps>): UseRadio; export type RadioBaseProps = ExtractPropTypes<typeof radioBaseProps>; export { setup };