UNPKG

sard-uniapp

Version:

sard-uniapp 是一套基于 Uniapp + Vue3 框架开发的兼容多端的 UI 组件库

169 lines (168 loc) 5.42 kB
import { type StyleValue, type Ref } from 'vue'; import { type TransitionHookEmits } from '../popup/common'; export interface DropdownProps { rootStyle?: StyleValue; rootClass?: string; direction?: 'down' | 'up'; disabled?: boolean; awayClosable?: boolean; overlayClosable?: boolean; duration?: number; togglable?: boolean; valueOnClear?: () => any; } export declare const defaultDropdownProps: { rootStyle?: (string | false | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => string | false | import("vue").CSSProperties | StyleValue[]) | null) | undefined; rootClass?: (string | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => string)) | undefined; direction?: ("down" | "up" | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => "down" | "up")) | undefined; disabled?: (boolean | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => boolean)) | undefined; awayClosable?: (boolean | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => boolean)) | undefined; overlayClosable?: (boolean | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => boolean)) | undefined; duration?: (number | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => number)) | undefined; togglable?: (boolean | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => boolean)) | undefined; valueOnClear?: ((() => any) | ((props: { rootStyle: StyleValue; rootClass: string; direction: "down" | "up"; disabled: boolean; awayClosable: boolean; overlayClosable: boolean; duration: number; togglable: boolean; valueOnClear: () => any; }) => () => any)) | undefined; }; export interface DropdownSlots { default?(props: Record<string, never>): any; } export interface DropdownOption { label?: string; value?: any; } export type DropdownCloseType = 'overlay' | 'away' | 'other-button' | 'option' | 'button'; export type DropdownBeforeClose = (type: DropdownCloseType) => any; export type DropdownBeforeOpen = () => any; export interface DropdownItemProps { rootStyle?: StyleValue; rootClass?: string; title?: string; label?: string; options?: DropdownOption[]; disabled?: boolean; modelValue?: any; visible?: boolean; separator?: string; placeholder?: string; togglable?: boolean; valueOnClear?: () => any; beforeClose?: DropdownBeforeClose; beforeOpen?: DropdownBeforeOpen; } export declare const defaultDropdownItemProps: { options: () => never[]; }; export interface DropdownItemSlots { default?(props: Record<string, never>): any; } export interface DropdownItemEmits extends TransitionHookEmits { (e: 'update:model-value', value: any): void; (e: 'change', value: any): void; (e: 'update:visible', visible: boolean): void; } export interface DropdownContext { direction: DropdownProps['direction']; disabled: DropdownProps['disabled']; awayClosable: DropdownProps['awayClosable']; overlayClosable: DropdownProps['overlayClosable']; duration: DropdownProps['duration']; togglable: DropdownProps['togglable']; valueOnClear: DropdownProps['valueOnClear']; hideOthers: (instance: any) => void; register: (instance: any, expose: { hide: () => void; visible: Ref<boolean>; }) => void; unregister: (instance: any) => void; } export declare const dropdownContextSymbol: unique symbol; export declare const defaultValueOnClear: () => undefined;