index.d.mts 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. import * as vue from 'vue';
  2. import { ComponentPropsOptions, ExtractPropTypes } 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. declare const VThemeProvider: {
  8. new (...args: any[]): vue.CreateComponentPublicInstance<{
  9. style: vue.StyleValue;
  10. tag: string;
  11. withBackground: boolean;
  12. } & {
  13. class?: any;
  14. theme?: string | undefined;
  15. } & {
  16. $children?: vue.VNodeChild | {
  17. default?: (() => vue.VNodeChild) | undefined;
  18. } | (() => vue.VNodeChild);
  19. 'v-slots'?: {
  20. default?: false | (() => vue.VNodeChild) | undefined;
  21. } | undefined;
  22. } & {
  23. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  24. }, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
  25. [key: string]: any;
  26. }>[] | JSX.Element | undefined, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
  27. style: vue.StyleValue;
  28. tag: string;
  29. withBackground: boolean;
  30. } & {
  31. class?: any;
  32. theme?: string | undefined;
  33. } & {
  34. $children?: vue.VNodeChild | {
  35. default?: (() => vue.VNodeChild) | undefined;
  36. } | (() => vue.VNodeChild);
  37. 'v-slots'?: {
  38. default?: false | (() => vue.VNodeChild) | undefined;
  39. } | undefined;
  40. } & {
  41. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  42. }, {
  43. style: vue.StyleValue;
  44. tag: string;
  45. withBackground: boolean;
  46. }, true, {}, vue.SlotsType<Partial<{
  47. default: () => vue.VNode[];
  48. }>>, {
  49. P: {};
  50. B: {};
  51. D: {};
  52. C: {};
  53. M: {};
  54. Defaults: {};
  55. }, {
  56. style: vue.StyleValue;
  57. tag: string;
  58. withBackground: boolean;
  59. } & {
  60. class?: any;
  61. theme?: string | undefined;
  62. } & {
  63. $children?: vue.VNodeChild | {
  64. default?: (() => vue.VNodeChild) | undefined;
  65. } | (() => vue.VNodeChild);
  66. 'v-slots'?: {
  67. default?: false | (() => vue.VNodeChild) | undefined;
  68. } | undefined;
  69. } & {
  70. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  71. }, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
  72. [key: string]: any;
  73. }>[] | JSX.Element | undefined, {}, {}, {}, {
  74. style: vue.StyleValue;
  75. tag: string;
  76. withBackground: boolean;
  77. }>;
  78. __isFragment?: never;
  79. __isTeleport?: never;
  80. __isSuspense?: never;
  81. } & vue.ComponentOptionsBase<{
  82. style: vue.StyleValue;
  83. tag: string;
  84. withBackground: boolean;
  85. } & {
  86. class?: any;
  87. theme?: string | undefined;
  88. } & {
  89. $children?: vue.VNodeChild | {
  90. default?: (() => vue.VNodeChild) | undefined;
  91. } | (() => vue.VNodeChild);
  92. 'v-slots'?: {
  93. default?: false | (() => vue.VNodeChild) | undefined;
  94. } | undefined;
  95. } & {
  96. "v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
  97. }, () => vue.VNode<vue.RendererNode, vue.RendererElement, {
  98. [key: string]: any;
  99. }>[] | JSX.Element | undefined, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
  100. style: vue.StyleValue;
  101. tag: string;
  102. withBackground: boolean;
  103. }, {}, string, vue.SlotsType<Partial<{
  104. default: () => vue.VNode[];
  105. }>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
  106. tag: {
  107. type: StringConstructor;
  108. default: string;
  109. };
  110. theme: StringConstructor;
  111. class: vue.PropType<ClassValue>;
  112. style: {
  113. type: vue.PropType<vue.StyleValue>;
  114. default: null;
  115. };
  116. withBackground: BooleanConstructor;
  117. }, vue.ExtractPropTypes<{
  118. tag: {
  119. type: StringConstructor;
  120. default: string;
  121. };
  122. theme: StringConstructor;
  123. class: vue.PropType<ClassValue>;
  124. style: {
  125. type: vue.PropType<vue.StyleValue>;
  126. default: null;
  127. };
  128. withBackground: BooleanConstructor;
  129. }>>;
  130. type VThemeProvider = InstanceType<typeof VThemeProvider>;
  131. export { VThemeProvider };