inputProps.d.ts 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. import type { ExtractPropTypes, PropType } from 'vue';
  2. import type { SizeType } from '../config-provider';
  3. import type { VueNode } from '../_util/type';
  4. import type { ChangeEventHandler, CompositionEventHandler, FocusEventHandler, KeyboardEventHandler, MouseEventHandler } from '../_util/EventInterface';
  5. import type { InputFocusOptions } from './utils/commonUtils';
  6. export declare const inputDefaultValue: string;
  7. export declare const commonInputProps: () => {
  8. addonBefore: import("vue-types").VueTypeValidableDef<any>;
  9. addonAfter: import("vue-types").VueTypeValidableDef<any>;
  10. prefix: import("vue-types").VueTypeValidableDef<any>;
  11. suffix: import("vue-types").VueTypeValidableDef<any>;
  12. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  13. affixWrapperClassName: StringConstructor;
  14. groupClassName: StringConstructor;
  15. wrapperClassName: StringConstructor;
  16. inputClassName: StringConstructor;
  17. allowClear: {
  18. type: BooleanConstructor;
  19. default: any;
  20. };
  21. };
  22. export declare const baseInputProps: () => {
  23. value: {
  24. type: PropType<string | number>;
  25. default: any;
  26. };
  27. defaultValue: {
  28. type: PropType<string | number>;
  29. default: any;
  30. };
  31. inputElement: import("vue-types").VueTypeValidableDef<any>;
  32. prefixCls: StringConstructor;
  33. disabled: {
  34. type: BooleanConstructor;
  35. default: any;
  36. };
  37. focused: {
  38. type: BooleanConstructor;
  39. default: any;
  40. };
  41. triggerFocus: PropType<() => void>;
  42. readonly: {
  43. type: BooleanConstructor;
  44. default: any;
  45. };
  46. handleReset: PropType<MouseEventHandler>;
  47. hidden: {
  48. type: BooleanConstructor;
  49. default: any;
  50. };
  51. addonBefore: import("vue-types").VueTypeValidableDef<any>;
  52. addonAfter: import("vue-types").VueTypeValidableDef<any>;
  53. prefix: import("vue-types").VueTypeValidableDef<any>;
  54. suffix: import("vue-types").VueTypeValidableDef<any>;
  55. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  56. affixWrapperClassName: StringConstructor;
  57. groupClassName: StringConstructor;
  58. wrapperClassName: StringConstructor;
  59. inputClassName: StringConstructor;
  60. allowClear: {
  61. type: BooleanConstructor;
  62. default: any;
  63. };
  64. };
  65. export declare const inputProps: () => {
  66. id: StringConstructor;
  67. placeholder: {
  68. type: PropType<string | number>;
  69. };
  70. autocomplete: StringConstructor;
  71. type: {
  72. type: PropType<"number" | "reset" | "submit" | "button" | "time" | "image" | "text" | "search" | "hidden" | "color" | "checkbox" | "radio" | "range" | "date" | "url" | "email" | "week" | "month" | "datetime-local" | "file" | "password" | "tel">;
  73. default: "number" | "reset" | "submit" | "button" | "time" | "image" | "text" | "search" | "hidden" | "color" | "checkbox" | "radio" | "range" | "date" | "url" | "email" | "week" | "month" | "datetime-local" | "file" | "password" | "tel";
  74. };
  75. name: StringConstructor;
  76. size: {
  77. type: PropType<SizeType>;
  78. };
  79. autofocus: {
  80. type: BooleanConstructor;
  81. default: any;
  82. };
  83. lazy: {
  84. type: BooleanConstructor;
  85. default: boolean;
  86. };
  87. maxlength: NumberConstructor;
  88. loading: {
  89. type: BooleanConstructor;
  90. default: any;
  91. };
  92. bordered: {
  93. type: BooleanConstructor;
  94. default: any;
  95. };
  96. showCount: {
  97. type: PropType<boolean | ShowCountProps>;
  98. };
  99. htmlSize: NumberConstructor;
  100. onPressEnter: PropType<KeyboardEventHandler>;
  101. onKeydown: PropType<KeyboardEventHandler>;
  102. onKeyup: PropType<KeyboardEventHandler>;
  103. onFocus: PropType<FocusEventHandler>;
  104. onBlur: PropType<FocusEventHandler>;
  105. onChange: PropType<ChangeEventHandler>;
  106. onInput: PropType<ChangeEventHandler>;
  107. 'onUpdate:value': PropType<(val: string) => void>;
  108. onCompositionstart: PropType<CompositionEventHandler>;
  109. onCompositionend: PropType<CompositionEventHandler>;
  110. valueModifiers: ObjectConstructor;
  111. hidden: {
  112. type: BooleanConstructor;
  113. default: any;
  114. };
  115. status: PropType<"" | "error" | "warning">;
  116. value: {
  117. type: PropType<string | number>;
  118. default: any;
  119. };
  120. defaultValue: {
  121. type: PropType<string | number>;
  122. default: any;
  123. };
  124. inputElement: import("vue-types").VueTypeValidableDef<any>;
  125. prefixCls: StringConstructor;
  126. disabled: {
  127. type: BooleanConstructor;
  128. default: any;
  129. };
  130. focused: {
  131. type: BooleanConstructor;
  132. default: any;
  133. };
  134. triggerFocus: PropType<() => void>;
  135. readonly: {
  136. type: BooleanConstructor;
  137. default: any;
  138. };
  139. handleReset: PropType<MouseEventHandler>;
  140. addonBefore: import("vue-types").VueTypeValidableDef<any>;
  141. addonAfter: import("vue-types").VueTypeValidableDef<any>;
  142. prefix: import("vue-types").VueTypeValidableDef<any>;
  143. suffix: import("vue-types").VueTypeValidableDef<any>;
  144. clearIcon: import("vue-types").VueTypeValidableDef<any>;
  145. affixWrapperClassName: StringConstructor;
  146. groupClassName: StringConstructor;
  147. wrapperClassName: StringConstructor;
  148. inputClassName: StringConstructor;
  149. allowClear: {
  150. type: BooleanConstructor;
  151. default: any;
  152. };
  153. };
  154. export type InputProps = Partial<ExtractPropTypes<ReturnType<typeof inputProps>>>;
  155. export interface ShowCountProps {
  156. formatter: (args: {
  157. count: number;
  158. maxlength?: number;
  159. value?: string;
  160. }) => VueNode;
  161. }
  162. export interface InputRef {
  163. focus: (options?: InputFocusOptions) => void;
  164. blur: () => void;
  165. setSelectionRange: (start: number, end: number, direction?: 'forward' | 'backward' | 'none') => void;
  166. select: () => void;
  167. input: HTMLInputElement | null;
  168. }