UNPKG

vuetify

Version:

Vue Material Component Framework

161 lines (152 loc) 3.85 kB
import { Ref, JSXComponent, PropType } from 'vue'; interface LocaleMessages { [key: string]: LocaleMessages | string; } interface LocaleOptions { messages?: LocaleMessages; locale?: string; fallback?: string; adapter?: LocaleInstance; } interface LocaleInstance { name: string; messages: Ref<LocaleMessages>; current: Ref<string>; fallback: Ref<string>; t: (key: string, ...params: unknown[]) => string; n: (value: number) => string; provide: (props: LocaleOptions) => LocaleInstance; } interface RtlOptions { rtl?: Record<string, boolean>; } type DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]>; } : T; type ThemeOptions = false | { cspNonce?: string; defaultTheme?: string; variations?: false | VariationsOptions; themes?: Record<string, ThemeDefinition>; }; type ThemeDefinition = DeepPartial<InternalThemeDefinition>; interface VariationsOptions { colors: string[]; lighten: number; darken: number; } interface InternalThemeDefinition { dark: boolean; colors: Colors; variables: Record<string, string | number>; } interface Colors extends BaseColors, OnColors { [key: string]: string; } interface BaseColors { background: string; surface: string; primary: string; secondary: string; success: string; warning: string; error: string; info: string; } interface OnColors { 'on-background': string; 'on-surface': string; 'on-primary': string; 'on-secondary': string; 'on-success': string; 'on-warning': string; 'on-error': string; 'on-info': string; } type DisplayBreakpoint = keyof DisplayThresholds; interface DisplayThresholds { xs: number; sm: number; md: number; lg: number; xl: number; xxl: number; } interface DisplayOptions { mobileBreakpoint?: number | DisplayBreakpoint; thresholds?: Partial<DisplayThresholds>; } type DefaultsInstance = undefined | { [key: string]: undefined | Record<string, unknown>; global?: Record<string, unknown>; }; type DefaultsOptions = Partial<DefaultsInstance>; type IconValue = string | JSXComponent; declare const IconValue: PropType<IconValue>; interface IconAliases { [name: string]: IconValue; complete: IconValue; cancel: IconValue; close: IconValue; delete: IconValue; clear: IconValue; success: IconValue; info: IconValue; warning: IconValue; error: IconValue; prev: IconValue; next: IconValue; checkboxOn: IconValue; checkboxOff: IconValue; checkboxIndeterminate: IconValue; delimiter: IconValue; sortAsc: IconValue; sortDesc: IconValue; expand: IconValue; menu: IconValue; subgroup: IconValue; dropdown: IconValue; radioOn: IconValue; radioOff: IconValue; edit: IconValue; ratingEmpty: IconValue; ratingFull: IconValue; ratingHalf: IconValue; loading: IconValue; first: IconValue; last: IconValue; unfold: IconValue; file: IconValue; plus: IconValue; minus: IconValue; } interface IconProps { tag: string; icon?: IconValue; disabled?: Boolean; } type IconComponent = JSXComponent<IconProps>; interface IconSet { component: IconComponent; } type IconOptions = { defaultSet: string; aliases?: Partial<IconAliases>; sets: Record<string, IconSet>; }; interface VuetifyOptions { aliases?: Record<string, any>; blueprint?: Blueprint; components?: Record<string, any>; directives?: Record<string, any>; defaults?: DefaultsOptions; display?: DisplayOptions; theme?: ThemeOptions; icons?: IconOptions; locale?: LocaleOptions & RtlOptions; ssr?: boolean; } interface Blueprint extends Omit<VuetifyOptions, 'blueprint'> { } declare const md2: Blueprint; export { md2 };