Field.d.ts 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383
  1. import { type PropType, type ExtractPropTypes, type HTMLAttributes } from 'vue';
  2. import type { FieldRule, FieldType, FieldTextAlign, FieldClearTrigger, FieldFormatTrigger, FieldAutosizeConfig } from './types';
  3. export declare const fieldSharedProps: {
  4. id: StringConstructor;
  5. name: StringConstructor;
  6. leftIcon: StringConstructor;
  7. rightIcon: StringConstructor;
  8. autofocus: BooleanConstructor;
  9. clearable: BooleanConstructor;
  10. maxlength: (NumberConstructor | StringConstructor)[];
  11. max: NumberConstructor;
  12. min: NumberConstructor;
  13. formatter: PropType<(value: string) => string>;
  14. clearIcon: {
  15. type: PropType<string>;
  16. default: string;
  17. };
  18. modelValue: {
  19. type: (NumberConstructor | StringConstructor)[];
  20. default: string;
  21. };
  22. inputAlign: PropType<FieldTextAlign>;
  23. placeholder: StringConstructor;
  24. autocomplete: StringConstructor;
  25. autocapitalize: StringConstructor;
  26. autocorrect: StringConstructor;
  27. errorMessage: StringConstructor;
  28. enterkeyhint: StringConstructor;
  29. clearTrigger: {
  30. type: PropType<FieldClearTrigger>;
  31. default: FieldClearTrigger;
  32. };
  33. formatTrigger: {
  34. type: PropType<FieldFormatTrigger>;
  35. default: FieldFormatTrigger;
  36. };
  37. spellcheck: {
  38. type: BooleanConstructor;
  39. default: null;
  40. };
  41. error: {
  42. type: BooleanConstructor;
  43. default: null;
  44. };
  45. disabled: {
  46. type: BooleanConstructor;
  47. default: null;
  48. };
  49. readonly: {
  50. type: BooleanConstructor;
  51. default: null;
  52. };
  53. inputmode: PropType<HTMLAttributes["inputmode"]>;
  54. };
  55. export declare const fieldProps: {
  56. tag: {
  57. type: PropType<keyof HTMLElementTagNameMap>;
  58. default: keyof HTMLElementTagNameMap;
  59. };
  60. icon: StringConstructor;
  61. size: PropType<import("../cell").CellSize>;
  62. title: (NumberConstructor | StringConstructor)[];
  63. value: (NumberConstructor | StringConstructor)[];
  64. label: (NumberConstructor | StringConstructor)[];
  65. center: BooleanConstructor;
  66. isLink: BooleanConstructor;
  67. border: {
  68. type: BooleanConstructor;
  69. default: true;
  70. };
  71. iconPrefix: StringConstructor;
  72. valueClass: PropType<unknown>;
  73. labelClass: PropType<unknown>;
  74. titleClass: PropType<unknown>;
  75. titleStyle: PropType<string | import("vue").CSSProperties>;
  76. arrowDirection: PropType<import("../cell").CellArrowDirection>;
  77. required: {
  78. type: PropType<boolean | "auto">;
  79. default: null;
  80. };
  81. clickable: {
  82. type: PropType<boolean | null>;
  83. default: null;
  84. };
  85. } & {
  86. id: StringConstructor;
  87. name: StringConstructor;
  88. leftIcon: StringConstructor;
  89. rightIcon: StringConstructor;
  90. autofocus: BooleanConstructor;
  91. clearable: BooleanConstructor;
  92. maxlength: (NumberConstructor | StringConstructor)[];
  93. max: NumberConstructor;
  94. min: NumberConstructor;
  95. formatter: PropType<(value: string) => string>;
  96. clearIcon: {
  97. type: PropType<string>;
  98. default: string;
  99. };
  100. modelValue: {
  101. type: (NumberConstructor | StringConstructor)[];
  102. default: string;
  103. };
  104. inputAlign: PropType<FieldTextAlign>;
  105. placeholder: StringConstructor;
  106. autocomplete: StringConstructor;
  107. autocapitalize: StringConstructor;
  108. autocorrect: StringConstructor;
  109. errorMessage: StringConstructor;
  110. enterkeyhint: StringConstructor;
  111. clearTrigger: {
  112. type: PropType<FieldClearTrigger>;
  113. default: FieldClearTrigger;
  114. };
  115. formatTrigger: {
  116. type: PropType<FieldFormatTrigger>;
  117. default: FieldFormatTrigger;
  118. };
  119. spellcheck: {
  120. type: BooleanConstructor;
  121. default: null;
  122. };
  123. error: {
  124. type: BooleanConstructor;
  125. default: null;
  126. };
  127. disabled: {
  128. type: BooleanConstructor;
  129. default: null;
  130. };
  131. readonly: {
  132. type: BooleanConstructor;
  133. default: null;
  134. };
  135. inputmode: PropType<HTMLAttributes["inputmode"]>;
  136. } & {
  137. rows: (NumberConstructor | StringConstructor)[];
  138. type: {
  139. type: PropType<FieldType>;
  140. default: FieldType;
  141. };
  142. rules: PropType<FieldRule[]>;
  143. autosize: PropType<boolean | FieldAutosizeConfig>;
  144. labelWidth: (NumberConstructor | StringConstructor)[];
  145. labelClass: PropType<unknown>;
  146. labelAlign: PropType<FieldTextAlign>;
  147. showWordLimit: BooleanConstructor;
  148. errorMessageAlign: PropType<FieldTextAlign>;
  149. colon: {
  150. type: BooleanConstructor;
  151. default: null;
  152. };
  153. };
  154. export type FieldProps = ExtractPropTypes<typeof fieldProps>;
  155. declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
  156. tag: {
  157. type: PropType<keyof HTMLElementTagNameMap>;
  158. default: keyof HTMLElementTagNameMap;
  159. };
  160. icon: StringConstructor;
  161. size: PropType<import("../cell").CellSize>;
  162. title: (NumberConstructor | StringConstructor)[];
  163. value: (NumberConstructor | StringConstructor)[];
  164. label: (NumberConstructor | StringConstructor)[];
  165. center: BooleanConstructor;
  166. isLink: BooleanConstructor;
  167. border: {
  168. type: BooleanConstructor;
  169. default: true;
  170. };
  171. iconPrefix: StringConstructor;
  172. valueClass: PropType<unknown>;
  173. labelClass: PropType<unknown>;
  174. titleClass: PropType<unknown>;
  175. titleStyle: PropType<string | import("vue").CSSProperties>;
  176. arrowDirection: PropType<import("../cell").CellArrowDirection>;
  177. required: {
  178. type: PropType<boolean | "auto">;
  179. default: null;
  180. };
  181. clickable: {
  182. type: PropType<boolean | null>;
  183. default: null;
  184. };
  185. } & {
  186. id: StringConstructor;
  187. name: StringConstructor;
  188. leftIcon: StringConstructor;
  189. rightIcon: StringConstructor;
  190. autofocus: BooleanConstructor;
  191. clearable: BooleanConstructor;
  192. maxlength: (NumberConstructor | StringConstructor)[];
  193. max: NumberConstructor;
  194. min: NumberConstructor;
  195. formatter: PropType<(value: string) => string>;
  196. clearIcon: {
  197. type: PropType<string>;
  198. default: string;
  199. };
  200. modelValue: {
  201. type: (NumberConstructor | StringConstructor)[];
  202. default: string;
  203. };
  204. inputAlign: PropType<FieldTextAlign>;
  205. placeholder: StringConstructor;
  206. autocomplete: StringConstructor;
  207. autocapitalize: StringConstructor;
  208. autocorrect: StringConstructor;
  209. errorMessage: StringConstructor;
  210. enterkeyhint: StringConstructor;
  211. clearTrigger: {
  212. type: PropType<FieldClearTrigger>;
  213. default: FieldClearTrigger;
  214. };
  215. formatTrigger: {
  216. type: PropType<FieldFormatTrigger>;
  217. default: FieldFormatTrigger;
  218. };
  219. spellcheck: {
  220. type: BooleanConstructor;
  221. default: null;
  222. };
  223. error: {
  224. type: BooleanConstructor;
  225. default: null;
  226. };
  227. disabled: {
  228. type: BooleanConstructor;
  229. default: null;
  230. };
  231. readonly: {
  232. type: BooleanConstructor;
  233. default: null;
  234. };
  235. inputmode: PropType<HTMLAttributes["inputmode"]>;
  236. } & {
  237. rows: (NumberConstructor | StringConstructor)[];
  238. type: {
  239. type: PropType<FieldType>;
  240. default: FieldType;
  241. };
  242. rules: PropType<FieldRule[]>;
  243. autosize: PropType<boolean | FieldAutosizeConfig>;
  244. labelWidth: (NumberConstructor | StringConstructor)[];
  245. labelClass: PropType<unknown>;
  246. labelAlign: PropType<FieldTextAlign>;
  247. showWordLimit: BooleanConstructor;
  248. errorMessageAlign: PropType<FieldTextAlign>;
  249. colon: {
  250. type: BooleanConstructor;
  251. default: null;
  252. };
  253. }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("clear" | "focus" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue")[], "clear" | "focus" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue", import("vue").PublicProps, Readonly<ExtractPropTypes<{
  254. tag: {
  255. type: PropType<keyof HTMLElementTagNameMap>;
  256. default: keyof HTMLElementTagNameMap;
  257. };
  258. icon: StringConstructor;
  259. size: PropType<import("../cell").CellSize>;
  260. title: (NumberConstructor | StringConstructor)[];
  261. value: (NumberConstructor | StringConstructor)[];
  262. label: (NumberConstructor | StringConstructor)[];
  263. center: BooleanConstructor;
  264. isLink: BooleanConstructor;
  265. border: {
  266. type: BooleanConstructor;
  267. default: true;
  268. };
  269. iconPrefix: StringConstructor;
  270. valueClass: PropType<unknown>;
  271. labelClass: PropType<unknown>;
  272. titleClass: PropType<unknown>;
  273. titleStyle: PropType<string | import("vue").CSSProperties>;
  274. arrowDirection: PropType<import("../cell").CellArrowDirection>;
  275. required: {
  276. type: PropType<boolean | "auto">;
  277. default: null;
  278. };
  279. clickable: {
  280. type: PropType<boolean | null>;
  281. default: null;
  282. };
  283. } & {
  284. id: StringConstructor;
  285. name: StringConstructor;
  286. leftIcon: StringConstructor;
  287. rightIcon: StringConstructor;
  288. autofocus: BooleanConstructor;
  289. clearable: BooleanConstructor;
  290. maxlength: (NumberConstructor | StringConstructor)[];
  291. max: NumberConstructor;
  292. min: NumberConstructor;
  293. formatter: PropType<(value: string) => string>;
  294. clearIcon: {
  295. type: PropType<string>;
  296. default: string;
  297. };
  298. modelValue: {
  299. type: (NumberConstructor | StringConstructor)[];
  300. default: string;
  301. };
  302. inputAlign: PropType<FieldTextAlign>;
  303. placeholder: StringConstructor;
  304. autocomplete: StringConstructor;
  305. autocapitalize: StringConstructor;
  306. autocorrect: StringConstructor;
  307. errorMessage: StringConstructor;
  308. enterkeyhint: StringConstructor;
  309. clearTrigger: {
  310. type: PropType<FieldClearTrigger>;
  311. default: FieldClearTrigger;
  312. };
  313. formatTrigger: {
  314. type: PropType<FieldFormatTrigger>;
  315. default: FieldFormatTrigger;
  316. };
  317. spellcheck: {
  318. type: BooleanConstructor;
  319. default: null;
  320. };
  321. error: {
  322. type: BooleanConstructor;
  323. default: null;
  324. };
  325. disabled: {
  326. type: BooleanConstructor;
  327. default: null;
  328. };
  329. readonly: {
  330. type: BooleanConstructor;
  331. default: null;
  332. };
  333. inputmode: PropType<HTMLAttributes["inputmode"]>;
  334. } & {
  335. rows: (NumberConstructor | StringConstructor)[];
  336. type: {
  337. type: PropType<FieldType>;
  338. default: FieldType;
  339. };
  340. rules: PropType<FieldRule[]>;
  341. autosize: PropType<boolean | FieldAutosizeConfig>;
  342. labelWidth: (NumberConstructor | StringConstructor)[];
  343. labelClass: PropType<unknown>;
  344. labelAlign: PropType<FieldTextAlign>;
  345. showWordLimit: BooleanConstructor;
  346. errorMessageAlign: PropType<FieldTextAlign>;
  347. colon: {
  348. type: BooleanConstructor;
  349. default: null;
  350. };
  351. }>> & Readonly<{
  352. onFocus?: ((...args: any[]) => any) | undefined;
  353. onBlur?: ((...args: any[]) => any) | undefined;
  354. onKeypress?: ((...args: any[]) => any) | undefined;
  355. onClear?: ((...args: any[]) => any) | undefined;
  356. onClickInput?: ((...args: any[]) => any) | undefined;
  357. onEndValidate?: ((...args: any[]) => any) | undefined;
  358. onStartValidate?: ((...args: any[]) => any) | undefined;
  359. onClickLeftIcon?: ((...args: any[]) => any) | undefined;
  360. onClickRightIcon?: ((...args: any[]) => any) | undefined;
  361. "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
  362. }>, {
  363. type: FieldType;
  364. tag: keyof HTMLElementTagNameMap;
  365. center: boolean;
  366. autofocus: boolean;
  367. disabled: boolean;
  368. border: boolean;
  369. isLink: boolean;
  370. required: boolean | "auto";
  371. clickable: boolean | null;
  372. clearable: boolean;
  373. clearIcon: string;
  374. modelValue: string | number;
  375. clearTrigger: FieldClearTrigger;
  376. formatTrigger: FieldFormatTrigger;
  377. spellcheck: boolean;
  378. error: boolean;
  379. readonly: boolean;
  380. showWordLimit: boolean;
  381. colon: boolean;
  382. }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
  383. export default _default;