index.d.mts 34 KB

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