index.d.mts 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228
  1. import * as vue from 'vue';
  2. import { ComponentPropsOptions, ExtractPropTypes } from 'vue';
  3. type ClassValue = any;
  4. declare const block: readonly ["top", "bottom"];
  5. declare const inline: readonly ["start", "end", "left", "right"];
  6. type Tblock = typeof block[number];
  7. type Tinline = typeof inline[number];
  8. type Anchor = Tblock | Tinline | 'center' | 'center center' | `${Tblock} ${Tinline | 'center'}` | `${Tinline} ${Tblock | 'center'}`;
  9. interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
  10. filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): Partial<Pick<T, U>>;
  11. }
  12. declare const VSheet: {
  13. new (...args: any[]): vue.CreateComponentPublicInstance<{
  14. style: vue.StyleValue;
  15. tag: string;
  16. tile: boolean;
  17. } & {
  18. location?: Anchor | null | undefined;
  19. height?: string | number | undefined;
  20. width?: string | number | undefined;
  21. border?: string | number | boolean | undefined;
  22. color?: string | undefined;
  23. maxHeight?: string | number | undefined;
  24. maxWidth?: string | number | undefined;
  25. minHeight?: string | number | undefined;
  26. minWidth?: string | number | undefined;
  27. position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
  28. class?: any;
  29. theme?: string | undefined;
  30. elevation?: string | number | undefined;
  31. rounded?: string | number | boolean | undefined;
  32. } & {
  33. $children?: vue.VNodeChild | {
  34. default?: (() => vue.VNodeChild) | undefined;
  35. } | (() => vue.VNodeChild);
  36. 'v-slots'?: {
  37. default?: false | (() => vue.VNodeChild) | undefined;
  38. } | undefined;
  39. } & {
  40. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  41. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
  42. style: vue.StyleValue;
  43. tag: string;
  44. tile: boolean;
  45. } & {
  46. location?: Anchor | null | undefined;
  47. height?: string | number | undefined;
  48. width?: string | number | undefined;
  49. border?: string | number | boolean | undefined;
  50. color?: string | undefined;
  51. maxHeight?: string | number | undefined;
  52. maxWidth?: string | number | undefined;
  53. minHeight?: string | number | undefined;
  54. minWidth?: string | number | undefined;
  55. position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
  56. class?: any;
  57. theme?: string | undefined;
  58. elevation?: string | number | undefined;
  59. rounded?: string | number | boolean | undefined;
  60. } & {
  61. $children?: vue.VNodeChild | {
  62. default?: (() => vue.VNodeChild) | undefined;
  63. } | (() => vue.VNodeChild);
  64. 'v-slots'?: {
  65. default?: false | (() => vue.VNodeChild) | undefined;
  66. } | undefined;
  67. } & {
  68. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  69. }, {
  70. style: vue.StyleValue;
  71. tag: string;
  72. rounded: string | number | boolean;
  73. tile: boolean;
  74. }, true, {}, vue.SlotsType<Partial<{
  75. default: () => vue.VNode[];
  76. }>>, {
  77. P: {};
  78. B: {};
  79. D: {};
  80. C: {};
  81. M: {};
  82. Defaults: {};
  83. }, {
  84. style: vue.StyleValue;
  85. tag: string;
  86. tile: boolean;
  87. } & {
  88. location?: Anchor | null | undefined;
  89. height?: string | number | undefined;
  90. width?: string | number | undefined;
  91. border?: string | number | boolean | undefined;
  92. color?: string | undefined;
  93. maxHeight?: string | number | undefined;
  94. maxWidth?: string | number | undefined;
  95. minHeight?: string | number | undefined;
  96. minWidth?: string | number | undefined;
  97. position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
  98. class?: any;
  99. theme?: string | undefined;
  100. elevation?: string | number | undefined;
  101. rounded?: string | number | boolean | undefined;
  102. } & {
  103. $children?: vue.VNodeChild | {
  104. default?: (() => vue.VNodeChild) | undefined;
  105. } | (() => vue.VNodeChild);
  106. 'v-slots'?: {
  107. default?: false | (() => vue.VNodeChild) | undefined;
  108. } | undefined;
  109. } & {
  110. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  111. }, {}, {}, {}, {}, {
  112. style: vue.StyleValue;
  113. tag: string;
  114. rounded: string | number | boolean;
  115. tile: boolean;
  116. }>;
  117. __isFragment?: never;
  118. __isTeleport?: never;
  119. __isSuspense?: never;
  120. } & vue.ComponentOptionsBase<{
  121. style: vue.StyleValue;
  122. tag: string;
  123. tile: boolean;
  124. } & {
  125. location?: Anchor | null | undefined;
  126. height?: string | number | undefined;
  127. width?: string | number | undefined;
  128. border?: string | number | boolean | undefined;
  129. color?: string | undefined;
  130. maxHeight?: string | number | undefined;
  131. maxWidth?: string | number | undefined;
  132. minHeight?: string | number | undefined;
  133. minWidth?: string | number | undefined;
  134. position?: "fixed" | "absolute" | "relative" | "static" | "sticky" | undefined;
  135. class?: any;
  136. theme?: string | undefined;
  137. elevation?: string | number | undefined;
  138. rounded?: string | number | boolean | undefined;
  139. } & {
  140. $children?: vue.VNodeChild | {
  141. default?: (() => vue.VNodeChild) | undefined;
  142. } | (() => vue.VNodeChild);
  143. 'v-slots'?: {
  144. default?: false | (() => vue.VNodeChild) | undefined;
  145. } | undefined;
  146. } & {
  147. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  148. }, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
  149. style: vue.StyleValue;
  150. tag: string;
  151. rounded: string | number | boolean;
  152. tile: boolean;
  153. }, {}, string, vue.SlotsType<Partial<{
  154. default: () => vue.VNode[];
  155. }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
  156. theme: StringConstructor;
  157. tag: {
  158. type: StringConstructor;
  159. default: string;
  160. };
  161. rounded: {
  162. type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  163. default: undefined;
  164. };
  165. tile: BooleanConstructor;
  166. position: {
  167. type: vue.PropType<"fixed" | "absolute" | "relative" | "static" | "sticky">;
  168. validator: (v: any) => boolean;
  169. };
  170. location: vue.PropType<Anchor | null>;
  171. elevation: {
  172. type: (StringConstructor | NumberConstructor)[];
  173. validator(v: any): boolean;
  174. };
  175. height: (StringConstructor | NumberConstructor)[];
  176. maxHeight: (StringConstructor | NumberConstructor)[];
  177. maxWidth: (StringConstructor | NumberConstructor)[];
  178. minHeight: (StringConstructor | NumberConstructor)[];
  179. minWidth: (StringConstructor | NumberConstructor)[];
  180. width: (StringConstructor | NumberConstructor)[];
  181. class: vue.PropType<ClassValue>;
  182. style: {
  183. type: vue.PropType<vue.StyleValue>;
  184. default: null;
  185. };
  186. border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  187. color: StringConstructor;
  188. }, vue.ExtractPropTypes<{
  189. theme: StringConstructor;
  190. tag: {
  191. type: StringConstructor;
  192. default: string;
  193. };
  194. rounded: {
  195. type: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  196. default: undefined;
  197. };
  198. tile: BooleanConstructor;
  199. position: {
  200. type: vue.PropType<"fixed" | "absolute" | "relative" | "static" | "sticky">;
  201. validator: (v: any) => boolean;
  202. };
  203. location: vue.PropType<Anchor | null>;
  204. elevation: {
  205. type: (StringConstructor | NumberConstructor)[];
  206. validator(v: any): boolean;
  207. };
  208. height: (StringConstructor | NumberConstructor)[];
  209. maxHeight: (StringConstructor | NumberConstructor)[];
  210. maxWidth: (StringConstructor | NumberConstructor)[];
  211. minHeight: (StringConstructor | NumberConstructor)[];
  212. minWidth: (StringConstructor | NumberConstructor)[];
  213. width: (StringConstructor | NumberConstructor)[];
  214. class: vue.PropType<ClassValue>;
  215. style: {
  216. type: vue.PropType<vue.StyleValue>;
  217. default: null;
  218. };
  219. border: (StringConstructor | BooleanConstructor | NumberConstructor)[];
  220. color: StringConstructor;
  221. }>>;
  222. type VSheet = InstanceType<typeof VSheet>;
  223. export { VSheet };