index.d.mts 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865
  1. import * as vue from 'vue';
  2. import { ComponentPropsOptions, ExtractPropTypes, PropType, ComponentPublicInstance, FunctionalComponent, ComputedRef, Ref } from 'vue';
  3. interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
  4. filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): Partial<Pick<T, U>>;
  5. }
  6. type ClassValue = any;
  7. type EventProp<T extends any[] = any[], F = (...args: T) => void> = F;
  8. declare const EventProp: <T extends any[] = any[]>() => PropType<EventProp<T>>;
  9. type Tick = {
  10. value: number;
  11. position: number;
  12. label?: string;
  13. };
  14. type VMessageSlot = {
  15. message: string;
  16. };
  17. type JSXComponent<Props = any> = {
  18. new (): ComponentPublicInstance<Props>;
  19. } | FunctionalComponent<Props>;
  20. type IconValue = string | (string | [path: string, opacity: number])[] | JSXComponent;
  21. declare const IconValue: PropType<IconValue>;
  22. type Density = null | 'default' | 'comfortable' | 'compact';
  23. type ValidationResult = string | boolean;
  24. type ValidationRule = ValidationResult | PromiseLike<ValidationResult> | ((value: any) => ValidationResult) | ((value: any) => PromiseLike<ValidationResult>);
  25. type ValidateOnValue = 'blur' | 'input' | 'submit' | 'invalid-input';
  26. type ValidateOn = ValidateOnValue | `${ValidateOnValue} lazy` | `${ValidateOnValue} eager` | `lazy ${ValidateOnValue}` | `eager ${ValidateOnValue}` | 'lazy' | 'eager';
  27. interface ValidationProps {
  28. disabled: boolean | null;
  29. error: boolean;
  30. errorMessages: string | readonly string[] | null;
  31. focused: boolean;
  32. maxErrors: string | number;
  33. name: string | undefined;
  34. label: string | undefined;
  35. readonly: boolean | null;
  36. rules: readonly ValidationRule[];
  37. modelValue: any;
  38. 'onUpdate:modelValue': EventProp | undefined;
  39. validateOn?: ValidateOn;
  40. validationValue: any;
  41. }
  42. interface VInputSlot {
  43. id: ComputedRef<string>;
  44. messagesId: ComputedRef<string>;
  45. isDirty: ComputedRef<boolean>;
  46. isDisabled: ComputedRef<boolean>;
  47. isReadonly: ComputedRef<boolean>;
  48. isPristine: Ref<boolean>;
  49. isValid: ComputedRef<boolean | null>;
  50. isValidating: Ref<boolean>;
  51. reset: () => void;
  52. resetValidation: () => void;
  53. validate: () => void;
  54. }
  55. declare const VSlider: {
  56. new (...args: any[]): vue.CreateComponentPublicInstance<{
  57. reverse: boolean;
  58. max: string | number;
  59. error: boolean;
  60. min: string | number;
  61. direction: "horizontal" | "vertical";
  62. style: vue.StyleValue;
  63. disabled: boolean | null;
  64. readonly: boolean | null;
  65. step: string | number;
  66. elevation: string | number;
  67. messages: string | readonly string[];
  68. focused: boolean;
  69. errorMessages: string | readonly string[] | null;
  70. maxErrors: string | number;
  71. rules: readonly ValidationRule[];
  72. modelValue: string | number;
  73. tile: boolean;
  74. density: Density;
  75. ripple: boolean;
  76. centerAffix: boolean;
  77. hideSpinButtons: boolean;
  78. persistentHint: boolean;
  79. showTicks: boolean | "always";
  80. tickSize: string | number;
  81. trackSize: string | number;
  82. thumbSize: string | number;
  83. } & {
  84. name?: string | undefined;
  85. id?: string | undefined;
  86. width?: string | number | undefined;
  87. color?: string | undefined;
  88. maxWidth?: string | number | undefined;
  89. minWidth?: string | number | undefined;
  90. label?: string | undefined;
  91. class?: any;
  92. theme?: string | undefined;
  93. 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
  94. validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
  95. validationValue?: any;
  96. rounded?: string | number | boolean | undefined;
  97. prependIcon?: IconValue | undefined;
  98. appendIcon?: IconValue | undefined;
  99. 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
  100. 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
  101. hint?: string | undefined;
  102. hideDetails?: boolean | "auto" | undefined;
  103. trackColor?: string | undefined;
  104. trackFillColor?: string | undefined;
  105. thumbColor?: string | undefined;
  106. thumbLabel?: boolean | "always" | undefined;
  107. ticks?: readonly number[] | Record<number, string> | undefined;
  108. } & {
  109. $children?: vue.VNodeChild | ((arg: VInputSlot) => vue.VNodeChild) | {
  110. default?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  111. prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  112. append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  113. details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  114. message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  115. 'thumb-label'?: ((arg: {
  116. modelValue: number;
  117. }) => vue.VNodeChild) | undefined;
  118. 'tick-label'?: ((arg: {
  119. tick: Tick;
  120. index: number;
  121. }) => vue.VNodeChild) | undefined;
  122. label?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  123. };
  124. 'v-slots'?: {
  125. default?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  126. prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  127. append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  128. details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  129. message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  130. 'thumb-label'?: false | ((arg: {
  131. modelValue: number;
  132. }) => vue.VNodeChild) | undefined;
  133. 'tick-label'?: false | ((arg: {
  134. tick: Tick;
  135. index: number;
  136. }) => vue.VNodeChild) | undefined;
  137. label?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  138. } | undefined;
  139. } & {
  140. "v-slot:default"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  141. "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  142. "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  143. "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  144. "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  145. "v-slot:thumb-label"?: false | ((arg: {
  146. modelValue: number;
  147. }) => vue.VNodeChild) | undefined;
  148. "v-slot:tick-label"?: false | ((arg: {
  149. tick: Tick;
  150. index: number;
  151. }) => vue.VNodeChild) | undefined;
  152. "v-slot:label"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  153. } & {
  154. onStart?: ((value: number) => any) | undefined;
  155. onEnd?: ((value: number) => any) | undefined;
  156. "onUpdate:focused"?: ((value: boolean) => any) | undefined;
  157. "onUpdate:modelValue"?: ((v: number) => any) | undefined;
  158. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
  159. 'update:focused': (value: boolean) => true;
  160. 'update:modelValue': (v: number) => true;
  161. start: (value: number) => true;
  162. end: (value: number) => true;
  163. }, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
  164. reverse: boolean;
  165. max: string | number;
  166. error: boolean;
  167. min: string | number;
  168. direction: "horizontal" | "vertical";
  169. style: vue.StyleValue;
  170. disabled: boolean | null;
  171. readonly: boolean | null;
  172. step: string | number;
  173. elevation: string | number;
  174. messages: string | readonly string[];
  175. focused: boolean;
  176. errorMessages: string | readonly string[] | null;
  177. maxErrors: string | number;
  178. rules: readonly ValidationRule[];
  179. modelValue: string | number;
  180. tile: boolean;
  181. density: Density;
  182. ripple: boolean;
  183. centerAffix: boolean;
  184. hideSpinButtons: boolean;
  185. persistentHint: boolean;
  186. showTicks: boolean | "always";
  187. tickSize: string | number;
  188. trackSize: string | number;
  189. thumbSize: string | number;
  190. } & {
  191. name?: string | undefined;
  192. id?: string | undefined;
  193. width?: string | number | undefined;
  194. color?: string | undefined;
  195. maxWidth?: string | number | undefined;
  196. minWidth?: string | number | undefined;
  197. label?: string | undefined;
  198. class?: any;
  199. theme?: string | undefined;
  200. 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
  201. validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
  202. validationValue?: any;
  203. rounded?: string | number | boolean | undefined;
  204. prependIcon?: IconValue | undefined;
  205. appendIcon?: IconValue | undefined;
  206. 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
  207. 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
  208. hint?: string | undefined;
  209. hideDetails?: boolean | "auto" | undefined;
  210. trackColor?: string | undefined;
  211. trackFillColor?: string | undefined;
  212. thumbColor?: string | undefined;
  213. thumbLabel?: boolean | "always" | undefined;
  214. ticks?: readonly number[] | Record<number, string> | undefined;
  215. } & {
  216. $children?: vue.VNodeChild | ((arg: VInputSlot) => vue.VNodeChild) | {
  217. default?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  218. prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  219. append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  220. details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  221. message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  222. 'thumb-label'?: ((arg: {
  223. modelValue: number;
  224. }) => vue.VNodeChild) | undefined;
  225. 'tick-label'?: ((arg: {
  226. tick: Tick;
  227. index: number;
  228. }) => vue.VNodeChild) | undefined;
  229. label?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  230. };
  231. 'v-slots'?: {
  232. default?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  233. prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  234. append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  235. details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  236. message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  237. 'thumb-label'?: false | ((arg: {
  238. modelValue: number;
  239. }) => vue.VNodeChild) | undefined;
  240. 'tick-label'?: false | ((arg: {
  241. tick: Tick;
  242. index: number;
  243. }) => vue.VNodeChild) | undefined;
  244. label?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  245. } | undefined;
  246. } & {
  247. "v-slot:default"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  248. "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  249. "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  250. "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  251. "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  252. "v-slot:thumb-label"?: false | ((arg: {
  253. modelValue: number;
  254. }) => vue.VNodeChild) | undefined;
  255. "v-slot:tick-label"?: false | ((arg: {
  256. tick: Tick;
  257. index: number;
  258. }) => vue.VNodeChild) | undefined;
  259. "v-slot:label"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  260. } & {
  261. onStart?: ((value: number) => any) | undefined;
  262. onEnd?: ((value: number) => any) | undefined;
  263. "onUpdate:focused"?: ((value: boolean) => any) | undefined;
  264. "onUpdate:modelValue"?: ((v: number) => any) | undefined;
  265. }, {
  266. reverse: boolean;
  267. max: string | number;
  268. error: boolean;
  269. min: string | number;
  270. direction: "horizontal" | "vertical";
  271. style: vue.StyleValue;
  272. disabled: boolean | null;
  273. readonly: boolean | null;
  274. step: string | number;
  275. elevation: string | number;
  276. messages: string | readonly string[];
  277. focused: boolean;
  278. errorMessages: string | readonly string[] | null;
  279. maxErrors: string | number;
  280. rules: readonly ValidationRule[];
  281. modelValue: string | number;
  282. rounded: string | number | boolean;
  283. tile: boolean;
  284. density: Density;
  285. ripple: boolean;
  286. centerAffix: boolean;
  287. hideSpinButtons: boolean;
  288. persistentHint: boolean;
  289. showTicks: boolean | "always";
  290. tickSize: string | number;
  291. trackSize: string | number;
  292. thumbLabel: boolean | "always" | undefined;
  293. thumbSize: string | number;
  294. }, true, {}, vue.SlotsType<Partial<{
  295. default: (arg: VInputSlot) => vue.VNode[];
  296. prepend: (arg: VInputSlot) => vue.VNode[];
  297. append: (arg: VInputSlot) => vue.VNode[];
  298. details: (arg: VInputSlot) => vue.VNode[];
  299. message: (arg: VMessageSlot) => vue.VNode[];
  300. 'thumb-label': (arg: {
  301. modelValue: number;
  302. }) => vue.VNode[];
  303. 'tick-label': (arg: {
  304. tick: Tick;
  305. index: number;
  306. }) => vue.VNode[];
  307. label: (arg: VInputSlot) => vue.VNode[];
  308. }>>, {
  309. P: {};
  310. B: {};
  311. D: {};
  312. C: {};
  313. M: {};
  314. Defaults: {};
  315. }, {
  316. reverse: boolean;
  317. max: string | number;
  318. error: boolean;
  319. min: string | number;
  320. direction: "horizontal" | "vertical";
  321. style: vue.StyleValue;
  322. disabled: boolean | null;
  323. readonly: boolean | null;
  324. step: string | number;
  325. elevation: string | number;
  326. messages: string | readonly string[];
  327. focused: boolean;
  328. errorMessages: string | readonly string[] | null;
  329. maxErrors: string | number;
  330. rules: readonly ValidationRule[];
  331. modelValue: string | number;
  332. tile: boolean;
  333. density: Density;
  334. ripple: boolean;
  335. centerAffix: boolean;
  336. hideSpinButtons: boolean;
  337. persistentHint: boolean;
  338. showTicks: boolean | "always";
  339. tickSize: string | number;
  340. trackSize: string | number;
  341. thumbSize: string | number;
  342. } & {
  343. name?: string | undefined;
  344. id?: string | undefined;
  345. width?: string | number | undefined;
  346. color?: string | undefined;
  347. maxWidth?: string | number | undefined;
  348. minWidth?: string | number | undefined;
  349. label?: string | undefined;
  350. class?: any;
  351. theme?: string | undefined;
  352. 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
  353. validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
  354. validationValue?: any;
  355. rounded?: string | number | boolean | undefined;
  356. prependIcon?: IconValue | undefined;
  357. appendIcon?: IconValue | undefined;
  358. 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
  359. 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
  360. hint?: string | undefined;
  361. hideDetails?: boolean | "auto" | undefined;
  362. trackColor?: string | undefined;
  363. trackFillColor?: string | undefined;
  364. thumbColor?: string | undefined;
  365. thumbLabel?: boolean | "always" | undefined;
  366. ticks?: readonly number[] | Record<number, string> | undefined;
  367. } & {
  368. $children?: vue.VNodeChild | ((arg: VInputSlot) => vue.VNodeChild) | {
  369. default?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  370. prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  371. append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  372. details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  373. message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  374. 'thumb-label'?: ((arg: {
  375. modelValue: number;
  376. }) => vue.VNodeChild) | undefined;
  377. 'tick-label'?: ((arg: {
  378. tick: Tick;
  379. index: number;
  380. }) => vue.VNodeChild) | undefined;
  381. label?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  382. };
  383. 'v-slots'?: {
  384. default?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  385. prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  386. append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  387. details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  388. message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  389. 'thumb-label'?: false | ((arg: {
  390. modelValue: number;
  391. }) => vue.VNodeChild) | undefined;
  392. 'tick-label'?: false | ((arg: {
  393. tick: Tick;
  394. index: number;
  395. }) => vue.VNodeChild) | undefined;
  396. label?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  397. } | undefined;
  398. } & {
  399. "v-slot:default"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  400. "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  401. "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  402. "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  403. "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  404. "v-slot:thumb-label"?: false | ((arg: {
  405. modelValue: number;
  406. }) => vue.VNodeChild) | undefined;
  407. "v-slot:tick-label"?: false | ((arg: {
  408. tick: Tick;
  409. index: number;
  410. }) => vue.VNodeChild) | undefined;
  411. "v-slot:label"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  412. } & {
  413. onStart?: ((value: number) => any) | undefined;
  414. onEnd?: ((value: number) => any) | undefined;
  415. "onUpdate:focused"?: ((value: boolean) => any) | undefined;
  416. "onUpdate:modelValue"?: ((v: number) => any) | undefined;
  417. }, {}, {}, {}, {}, {
  418. reverse: boolean;
  419. max: string | number;
  420. error: boolean;
  421. min: string | number;
  422. direction: "horizontal" | "vertical";
  423. style: vue.StyleValue;
  424. disabled: boolean | null;
  425. readonly: boolean | null;
  426. step: string | number;
  427. elevation: string | number;
  428. messages: string | readonly string[];
  429. focused: boolean;
  430. errorMessages: string | readonly string[] | null;
  431. maxErrors: string | number;
  432. rules: readonly ValidationRule[];
  433. modelValue: string | number;
  434. rounded: string | number | boolean;
  435. tile: boolean;
  436. density: Density;
  437. ripple: boolean;
  438. centerAffix: boolean;
  439. hideSpinButtons: boolean;
  440. persistentHint: boolean;
  441. showTicks: boolean | "always";
  442. tickSize: string | number;
  443. trackSize: string | number;
  444. thumbLabel: boolean | "always" | undefined;
  445. thumbSize: string | number;
  446. }>;
  447. __isFragment?: never;
  448. __isTeleport?: never;
  449. __isSuspense?: never;
  450. } & vue.ComponentOptionsBase<{
  451. reverse: boolean;
  452. max: string | number;
  453. error: boolean;
  454. min: string | number;
  455. direction: "horizontal" | "vertical";
  456. style: vue.StyleValue;
  457. disabled: boolean | null;
  458. readonly: boolean | null;
  459. step: string | number;
  460. elevation: string | number;
  461. messages: string | readonly string[];
  462. focused: boolean;
  463. errorMessages: string | readonly string[] | null;
  464. maxErrors: string | number;
  465. rules: readonly ValidationRule[];
  466. modelValue: string | number;
  467. tile: boolean;
  468. density: Density;
  469. ripple: boolean;
  470. centerAffix: boolean;
  471. hideSpinButtons: boolean;
  472. persistentHint: boolean;
  473. showTicks: boolean | "always";
  474. tickSize: string | number;
  475. trackSize: string | number;
  476. thumbSize: string | number;
  477. } & {
  478. name?: string | undefined;
  479. id?: string | undefined;
  480. width?: string | number | undefined;
  481. color?: string | undefined;
  482. maxWidth?: string | number | undefined;
  483. minWidth?: string | number | undefined;
  484. label?: string | undefined;
  485. class?: any;
  486. theme?: string | undefined;
  487. 'onUpdate:focused'?: ((args_0: boolean) => void) | undefined;
  488. validateOn?: ("eager" | "lazy" | ("input" | "blur" | "submit" | "invalid-input") | "input lazy" | "blur lazy" | "submit lazy" | "invalid-input lazy" | "input eager" | "blur eager" | "submit eager" | "invalid-input eager" | "lazy input" | "lazy blur" | "lazy submit" | "lazy invalid-input" | "eager input" | "eager blur" | "eager submit" | "eager invalid-input") | undefined;
  489. validationValue?: any;
  490. rounded?: string | number | boolean | undefined;
  491. prependIcon?: IconValue | undefined;
  492. appendIcon?: IconValue | undefined;
  493. 'onClick:append'?: ((args_0: MouseEvent) => void) | undefined;
  494. 'onClick:prepend'?: ((args_0: MouseEvent) => void) | undefined;
  495. hint?: string | undefined;
  496. hideDetails?: boolean | "auto" | undefined;
  497. trackColor?: string | undefined;
  498. trackFillColor?: string | undefined;
  499. thumbColor?: string | undefined;
  500. thumbLabel?: boolean | "always" | undefined;
  501. ticks?: readonly number[] | Record<number, string> | undefined;
  502. } & {
  503. $children?: vue.VNodeChild | ((arg: VInputSlot) => vue.VNodeChild) | {
  504. default?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  505. prepend?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  506. append?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  507. details?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  508. message?: ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  509. 'thumb-label'?: ((arg: {
  510. modelValue: number;
  511. }) => vue.VNodeChild) | undefined;
  512. 'tick-label'?: ((arg: {
  513. tick: Tick;
  514. index: number;
  515. }) => vue.VNodeChild) | undefined;
  516. label?: ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  517. };
  518. 'v-slots'?: {
  519. default?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  520. prepend?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  521. append?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  522. details?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  523. message?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  524. 'thumb-label'?: false | ((arg: {
  525. modelValue: number;
  526. }) => vue.VNodeChild) | undefined;
  527. 'tick-label'?: false | ((arg: {
  528. tick: Tick;
  529. index: number;
  530. }) => vue.VNodeChild) | undefined;
  531. label?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  532. } | undefined;
  533. } & {
  534. "v-slot:default"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  535. "v-slot:prepend"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  536. "v-slot:append"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  537. "v-slot:details"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  538. "v-slot:message"?: false | ((arg: VMessageSlot) => vue.VNodeChild) | undefined;
  539. "v-slot:thumb-label"?: false | ((arg: {
  540. modelValue: number;
  541. }) => vue.VNodeChild) | undefined;
  542. "v-slot:tick-label"?: false | ((arg: {
  543. tick: Tick;
  544. index: number;
  545. }) => vue.VNodeChild) | undefined;
  546. "v-slot:label"?: false | ((arg: VInputSlot) => vue.VNodeChild) | undefined;
  547. } & {
  548. onStart?: ((value: number) => any) | undefined;
  549. onEnd?: ((value: number) => any) | undefined;
  550. "onUpdate:focused"?: ((value: boolean) => any) | undefined;
  551. "onUpdate:modelValue"?: ((v: number) => any) | undefined;
  552. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
  553. 'update:focused': (value: boolean) => true;
  554. 'update:modelValue': (v: number) => true;
  555. start: (value: number) => true;
  556. end: (value: number) => true;
  557. }, string, {
  558. reverse: boolean;
  559. max: string | number;
  560. error: boolean;
  561. min: string | number;
  562. direction: "horizontal" | "vertical";
  563. style: vue.StyleValue;
  564. disabled: boolean | null;
  565. readonly: boolean | null;
  566. step: string | number;
  567. elevation: string | number;
  568. messages: string | readonly string[];
  569. focused: boolean;
  570. errorMessages: string | readonly string[] | null;
  571. maxErrors: string | number;
  572. rules: readonly ValidationRule[];
  573. modelValue: string | number;
  574. rounded: string | number | boolean;
  575. tile: boolean;
  576. density: Density;
  577. ripple: boolean;
  578. centerAffix: boolean;
  579. hideSpinButtons: boolean;
  580. persistentHint: boolean;
  581. showTicks: boolean | "always";
  582. tickSize: string | number;
  583. trackSize: string | number;
  584. thumbLabel: boolean | "always" | undefined;
  585. thumbSize: string | number;
  586. }, {}, string, vue.SlotsType<Partial<{
  587. default: (arg: VInputSlot) => vue.VNode[];
  588. prepend: (arg: VInputSlot) => vue.VNode[];
  589. append: (arg: VInputSlot) => vue.VNode[];
  590. details: (arg: VInputSlot) => vue.VNode[];
  591. message: (arg: VMessageSlot) => vue.VNode[];
  592. 'thumb-label': (arg: {
  593. modelValue: number;
  594. }) => vue.VNode[];
  595. 'tick-label': (arg: {
  596. tick: Tick;
  597. index: number;
  598. }) => vue.VNode[];
  599. label: (arg: VInputSlot) => vue.VNode[];
  600. }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
  601. modelValue: {
  602. type: (StringConstructor | NumberConstructor)[];
  603. default: number;
  604. };
  605. focused: BooleanConstructor;
  606. 'onUpdate:focused': vue.PropType<(args_0: boolean) => void>;
  607. disabled: {
  608. type: vue.PropType<boolean | null>;
  609. default: null;
  610. };
  611. error: BooleanConstructor;
  612. errorMessages: {
  613. type: vue.PropType<string | readonly string[] | null>;
  614. default: () => never[];
  615. };
  616. maxErrors: {
  617. type: (StringConstructor | NumberConstructor)[];
  618. default: number;
  619. };
  620. name: StringConstructor;
  621. label: StringConstructor;
  622. readonly: {
  623. type: vue.PropType<boolean | null>;
  624. default: null;
  625. };
  626. rules: {
  627. type: vue.PropType<readonly ValidationRule[]>;
  628. default: () => never[];
  629. };
  630. validateOn: vue.PropType<ValidationProps["validateOn"]>;
  631. validationValue: null;
  632. theme: StringConstructor;
  633. width: (StringConstructor | NumberConstructor)[];
  634. maxWidth: (StringConstructor | NumberConstructor)[];
  635. minWidth: (StringConstructor | NumberConstructor)[];
  636. density: {
  637. type: vue.PropType<Density>;
  638. default: string;
  639. validator: (v: any) => boolean;
  640. };
  641. class: vue.PropType<ClassValue>;
  642. style: {
  643. type: vue.PropType<vue.StyleValue>;
  644. default: null;
  645. };
  646. id: StringConstructor;
  647. appendIcon: vue.PropType<IconValue>;
  648. centerAffix: {
  649. type: BooleanConstructor;
  650. default: boolean;
  651. };
  652. prependIcon: vue.PropType<IconValue>;
  653. hideDetails: vue.PropType<boolean | "auto">;
  654. hideSpinButtons: BooleanConstructor;
  655. hint: StringConstructor;
  656. persistentHint: BooleanConstructor;
  657. messages: {
  658. type: vue.PropType<string | readonly string[]>;
  659. default: () => never[];
  660. };
  661. direction: {
  662. type: vue.PropType<"horizontal" | "vertical">;
  663. default: string;
  664. validator: (v: any) => boolean;
  665. };
  666. 'onClick:prepend': vue.PropType<(args_0: MouseEvent) => void>;
  667. 'onClick:append': vue.PropType<(args_0: MouseEvent) => void>;
  668. ripple: {
  669. type: BooleanConstructor;
  670. default: boolean;
  671. };
  672. elevation: Omit<{
  673. type: (StringConstructor | NumberConstructor)[];
  674. validator(v: any): boolean;
  675. }, "type" | "default"> & {
  676. type: vue.PropType<string | number>;
  677. default: NonNullable<string | number>;
  678. };
  679. rounded: {
  680. type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  681. default: undefined;
  682. };
  683. tile: BooleanConstructor;
  684. max: {
  685. type: (StringConstructor | NumberConstructor)[];
  686. default: number;
  687. };
  688. min: {
  689. type: (StringConstructor | NumberConstructor)[];
  690. default: number;
  691. };
  692. step: {
  693. type: (StringConstructor | NumberConstructor)[];
  694. default: number;
  695. };
  696. thumbColor: StringConstructor;
  697. thumbLabel: {
  698. type: vue.PropType<boolean | "always" | undefined>;
  699. default: undefined;
  700. validator: (v: any) => boolean;
  701. };
  702. thumbSize: {
  703. type: (StringConstructor | NumberConstructor)[];
  704. default: number;
  705. };
  706. showTicks: {
  707. type: vue.PropType<boolean | "always">;
  708. default: boolean;
  709. validator: (v: any) => boolean;
  710. };
  711. ticks: {
  712. type: vue.PropType<readonly number[] | Record<number, string>>;
  713. };
  714. tickSize: {
  715. type: (StringConstructor | NumberConstructor)[];
  716. default: number;
  717. };
  718. color: StringConstructor;
  719. trackColor: StringConstructor;
  720. trackFillColor: StringConstructor;
  721. trackSize: {
  722. type: (StringConstructor | NumberConstructor)[];
  723. default: number;
  724. };
  725. reverse: BooleanConstructor;
  726. }, vue.ExtractPropTypes<{
  727. modelValue: {
  728. type: (StringConstructor | NumberConstructor)[];
  729. default: number;
  730. };
  731. focused: BooleanConstructor;
  732. 'onUpdate:focused': vue.PropType<(args_0: boolean) => void>;
  733. disabled: {
  734. type: vue.PropType<boolean | null>;
  735. default: null;
  736. };
  737. error: BooleanConstructor;
  738. errorMessages: {
  739. type: vue.PropType<string | readonly string[] | null>;
  740. default: () => never[];
  741. };
  742. maxErrors: {
  743. type: (StringConstructor | NumberConstructor)[];
  744. default: number;
  745. };
  746. name: StringConstructor;
  747. label: StringConstructor;
  748. readonly: {
  749. type: vue.PropType<boolean | null>;
  750. default: null;
  751. };
  752. rules: {
  753. type: vue.PropType<readonly ValidationRule[]>;
  754. default: () => never[];
  755. };
  756. validateOn: vue.PropType<ValidationProps["validateOn"]>;
  757. validationValue: null;
  758. theme: StringConstructor;
  759. width: (StringConstructor | NumberConstructor)[];
  760. maxWidth: (StringConstructor | NumberConstructor)[];
  761. minWidth: (StringConstructor | NumberConstructor)[];
  762. density: {
  763. type: vue.PropType<Density>;
  764. default: string;
  765. validator: (v: any) => boolean;
  766. };
  767. class: vue.PropType<ClassValue>;
  768. style: {
  769. type: vue.PropType<vue.StyleValue>;
  770. default: null;
  771. };
  772. id: StringConstructor;
  773. appendIcon: vue.PropType<IconValue>;
  774. centerAffix: {
  775. type: BooleanConstructor;
  776. default: boolean;
  777. };
  778. prependIcon: vue.PropType<IconValue>;
  779. hideDetails: vue.PropType<boolean | "auto">;
  780. hideSpinButtons: BooleanConstructor;
  781. hint: StringConstructor;
  782. persistentHint: BooleanConstructor;
  783. messages: {
  784. type: vue.PropType<string | readonly string[]>;
  785. default: () => never[];
  786. };
  787. direction: {
  788. type: vue.PropType<"horizontal" | "vertical">;
  789. default: string;
  790. validator: (v: any) => boolean;
  791. };
  792. 'onClick:prepend': vue.PropType<(args_0: MouseEvent) => void>;
  793. 'onClick:append': vue.PropType<(args_0: MouseEvent) => void>;
  794. ripple: {
  795. type: BooleanConstructor;
  796. default: boolean;
  797. };
  798. elevation: Omit<{
  799. type: (StringConstructor | NumberConstructor)[];
  800. validator(v: any): boolean;
  801. }, "type" | "default"> & {
  802. type: vue.PropType<string | number>;
  803. default: NonNullable<string | number>;
  804. };
  805. rounded: {
  806. type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  807. default: undefined;
  808. };
  809. tile: BooleanConstructor;
  810. max: {
  811. type: (StringConstructor | NumberConstructor)[];
  812. default: number;
  813. };
  814. min: {
  815. type: (StringConstructor | NumberConstructor)[];
  816. default: number;
  817. };
  818. step: {
  819. type: (StringConstructor | NumberConstructor)[];
  820. default: number;
  821. };
  822. thumbColor: StringConstructor;
  823. thumbLabel: {
  824. type: vue.PropType<boolean | "always" | undefined>;
  825. default: undefined;
  826. validator: (v: any) => boolean;
  827. };
  828. thumbSize: {
  829. type: (StringConstructor | NumberConstructor)[];
  830. default: number;
  831. };
  832. showTicks: {
  833. type: vue.PropType<boolean | "always">;
  834. default: boolean;
  835. validator: (v: any) => boolean;
  836. };
  837. ticks: {
  838. type: vue.PropType<readonly number[] | Record<number, string>>;
  839. };
  840. tickSize: {
  841. type: (StringConstructor | NumberConstructor)[];
  842. default: number;
  843. };
  844. color: StringConstructor;
  845. trackColor: StringConstructor;
  846. trackFillColor: StringConstructor;
  847. trackSize: {
  848. type: (StringConstructor | NumberConstructor)[];
  849. default: number;
  850. };
  851. reverse: BooleanConstructor;
  852. }>>;
  853. type VSlider = InstanceType<typeof VSlider>;
  854. export { VSlider };