index.d.mts 31 KB

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