index.d.mts 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. import * as vue from 'vue';
  2. import { ComponentPropsOptions, ExtractPropTypes, VNode, PropType } 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 VSkeletonLoaderType = keyof typeof rootTypes;
  7. declare const rootTypes: {
  8. readonly actions: "button@2";
  9. readonly article: "heading, paragraph";
  10. readonly avatar: "avatar";
  11. readonly button: "button";
  12. readonly card: "image, heading";
  13. readonly 'card-avatar': "image, list-item-avatar";
  14. readonly chip: "chip";
  15. readonly 'date-picker': "list-item, heading, divider, date-picker-options, date-picker-days, actions";
  16. readonly 'date-picker-options': "text, avatar@2";
  17. readonly 'date-picker-days': "avatar@28";
  18. readonly divider: "divider";
  19. readonly heading: "heading";
  20. readonly image: "image";
  21. readonly 'list-item': "text";
  22. readonly 'list-item-avatar': "avatar, text";
  23. readonly 'list-item-two-line': "sentences";
  24. readonly 'list-item-avatar-two-line': "avatar, sentences";
  25. readonly 'list-item-three-line': "paragraph";
  26. readonly 'list-item-avatar-three-line': "avatar, paragraph";
  27. readonly ossein: "ossein";
  28. readonly paragraph: "text@3";
  29. readonly sentences: "text@2";
  30. readonly subtitle: "text";
  31. readonly table: "table-heading, table-thead, table-tbody, table-tfoot";
  32. readonly 'table-heading': "chip, text";
  33. readonly 'table-thead': "heading@6";
  34. readonly 'table-tbody': "table-row-divider@6";
  35. readonly 'table-row-divider': "table-row, divider";
  36. readonly 'table-row': "text@6";
  37. readonly 'table-tfoot': "text@2, avatar@2";
  38. readonly text: "text";
  39. };
  40. declare const VSkeletonLoader: {
  41. new (...args: any[]): vue.CreateComponentPublicInstance<{
  42. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  43. loading: boolean;
  44. loadingText: string;
  45. boilerplate: boolean;
  46. } & {
  47. height?: string | number | undefined;
  48. width?: string | number | undefined;
  49. color?: string | undefined;
  50. maxHeight?: string | number | undefined;
  51. maxWidth?: string | number | undefined;
  52. minHeight?: string | number | undefined;
  53. minWidth?: string | number | undefined;
  54. theme?: string | undefined;
  55. elevation?: string | number | undefined;
  56. } & {
  57. $children?: vue.VNodeChild | {
  58. default?: (() => vue.VNodeChild) | undefined;
  59. } | (() => vue.VNodeChild);
  60. 'v-slots'?: {
  61. default?: false | (() => vue.VNodeChild) | undefined;
  62. } | undefined;
  63. } & {
  64. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  65. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
  66. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  67. loading: boolean;
  68. loadingText: string;
  69. boilerplate: boolean;
  70. } & {
  71. height?: string | number | undefined;
  72. width?: string | number | undefined;
  73. color?: string | undefined;
  74. maxHeight?: string | number | undefined;
  75. maxWidth?: string | number | undefined;
  76. minHeight?: string | number | undefined;
  77. minWidth?: string | number | undefined;
  78. theme?: string | undefined;
  79. elevation?: string | number | undefined;
  80. } & {
  81. $children?: vue.VNodeChild | {
  82. default?: (() => vue.VNodeChild) | undefined;
  83. } | (() => vue.VNodeChild);
  84. 'v-slots'?: {
  85. default?: false | (() => vue.VNodeChild) | undefined;
  86. } | undefined;
  87. } & {
  88. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  89. }, {
  90. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  91. loading: boolean;
  92. loadingText: string;
  93. boilerplate: boolean;
  94. }, true, {}, vue.SlotsType<Partial<{
  95. default: () => VNode[];
  96. }>>, {
  97. P: {};
  98. B: {};
  99. D: {};
  100. C: {};
  101. M: {};
  102. Defaults: {};
  103. }, {
  104. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  105. loading: boolean;
  106. loadingText: string;
  107. boilerplate: boolean;
  108. } & {
  109. height?: string | number | undefined;
  110. width?: string | number | undefined;
  111. color?: string | undefined;
  112. maxHeight?: string | number | undefined;
  113. maxWidth?: string | number | undefined;
  114. minHeight?: string | number | undefined;
  115. minWidth?: string | number | undefined;
  116. theme?: string | undefined;
  117. elevation?: string | number | undefined;
  118. } & {
  119. $children?: vue.VNodeChild | {
  120. default?: (() => vue.VNodeChild) | undefined;
  121. } | (() => vue.VNodeChild);
  122. 'v-slots'?: {
  123. default?: false | (() => vue.VNodeChild) | undefined;
  124. } | undefined;
  125. } & {
  126. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  127. }, {}, {}, {}, {}, {
  128. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  129. loading: boolean;
  130. loadingText: string;
  131. boilerplate: boolean;
  132. }>;
  133. __isFragment?: never;
  134. __isTeleport?: never;
  135. __isSuspense?: never;
  136. } & vue.ComponentOptionsBase<{
  137. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  138. loading: boolean;
  139. loadingText: string;
  140. boilerplate: boolean;
  141. } & {
  142. height?: string | number | undefined;
  143. width?: string | number | undefined;
  144. color?: string | undefined;
  145. maxHeight?: string | number | undefined;
  146. maxWidth?: string | number | undefined;
  147. minHeight?: string | number | undefined;
  148. minWidth?: string | number | undefined;
  149. theme?: string | undefined;
  150. elevation?: string | number | undefined;
  151. } & {
  152. $children?: vue.VNodeChild | {
  153. default?: (() => vue.VNodeChild) | undefined;
  154. } | (() => vue.VNodeChild);
  155. 'v-slots'?: {
  156. default?: false | (() => vue.VNodeChild) | undefined;
  157. } | undefined;
  158. } & {
  159. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  160. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
  161. type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
  162. loading: boolean;
  163. loadingText: string;
  164. boilerplate: boolean;
  165. }, {}, string, vue.SlotsType<Partial<{
  166. default: () => VNode[];
  167. }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
  168. theme: StringConstructor;
  169. elevation: {
  170. type: (StringConstructor | NumberConstructor)[];
  171. validator(v: any): boolean;
  172. };
  173. height: (StringConstructor | NumberConstructor)[];
  174. maxHeight: (StringConstructor | NumberConstructor)[];
  175. maxWidth: (StringConstructor | NumberConstructor)[];
  176. minHeight: (StringConstructor | NumberConstructor)[];
  177. minWidth: (StringConstructor | NumberConstructor)[];
  178. width: (StringConstructor | NumberConstructor)[];
  179. boilerplate: BooleanConstructor;
  180. color: StringConstructor;
  181. loading: BooleanConstructor;
  182. loadingText: {
  183. type: StringConstructor;
  184. default: string;
  185. };
  186. type: {
  187. type: PropType<VSkeletonLoaderType | (string & {}) | ReadonlyArray<VSkeletonLoaderType | (string & {})>>;
  188. default: string;
  189. };
  190. }, vue.ExtractPropTypes<{
  191. theme: StringConstructor;
  192. elevation: {
  193. type: (StringConstructor | NumberConstructor)[];
  194. validator(v: any): boolean;
  195. };
  196. height: (StringConstructor | NumberConstructor)[];
  197. maxHeight: (StringConstructor | NumberConstructor)[];
  198. maxWidth: (StringConstructor | NumberConstructor)[];
  199. minHeight: (StringConstructor | NumberConstructor)[];
  200. minWidth: (StringConstructor | NumberConstructor)[];
  201. width: (StringConstructor | NumberConstructor)[];
  202. boilerplate: BooleanConstructor;
  203. color: StringConstructor;
  204. loading: BooleanConstructor;
  205. loadingText: {
  206. type: StringConstructor;
  207. default: string;
  208. };
  209. type: {
  210. type: PropType<VSkeletonLoaderType | (string & {}) | ReadonlyArray<VSkeletonLoaderType | (string & {})>>;
  211. default: string;
  212. };
  213. }>>;
  214. type VSkeletonLoader = InstanceType<typeof VSkeletonLoader>;
  215. export { VSkeletonLoader };