voiptime-components 1.3.0 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2,7 +2,10 @@ import { App } from 'vue';
2
2
  import { Component } from 'vue';
3
3
  import { ComponentOptionsMixin } from 'vue';
4
4
  import { ComponentProvideOptions } from 'vue';
5
+ import { CreateComponentPublicInstanceWithMixins } from 'vue';
5
6
  import { DefineComponent } from 'vue';
7
+ import { GlobalComponents } from 'vue';
8
+ import { GlobalDirectives } from 'vue';
6
9
  import { InjectionKey } from 'vue';
7
10
  import { ObjectDirective } from 'vue';
8
11
  import { PublicProps } from 'vue';
@@ -138,6 +141,7 @@ declare const __VLS_component_4: DefineComponent<__VLS_PublicProps, {
138
141
  selectOnClickRow: boolean;
139
142
  highlightCurrentRow: boolean;
140
143
  allData: Record<string, any>[];
144
+ hideHeader: boolean;
141
145
  }, {}, {}, {}, string, ComponentProvideOptions, false, {
142
146
  tableWrapperRef: HTMLDivElement;
143
147
  }, HTMLDivElement>;
@@ -176,6 +180,164 @@ declare const __VLS_component_6: DefineComponent<DropdownItemProps, {}, {}, {},
176
180
  onClick?: ((event: MouseEvent) => any) | undefined;
177
181
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLLIElement>;
178
182
 
183
+ declare const __VLS_component_7: DefineComponent<VtSelectProps, {
184
+ focus(): void;
185
+ blur(): void;
186
+ clear(): void;
187
+ validate(): boolean;
188
+ clearValidation(): void;
189
+ getSelectedOptions(): VtSelectOption[];
190
+ getValidationState(): {
191
+ isValid: boolean;
192
+ errors: string[];
193
+ };
194
+ registerOption(option: VtSelectOption): void;
195
+ unregisterOption(value: string | number): void;
196
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
197
+ blur: (event: FocusEvent) => any;
198
+ change: (value: string | number | (string | number)[]) => any;
199
+ focus: (event: FocusEvent) => any;
200
+ filter: (query: string) => any;
201
+ "update:modelValue": (value: string | number | (string | number)[]) => any;
202
+ clear: () => any;
203
+ "visible-change": (visible: boolean) => any;
204
+ validation: (result: {
205
+ isValid: boolean;
206
+ errors: string[];
207
+ }) => any;
208
+ "remove-tag": (value: string | number) => any;
209
+ }, string, PublicProps, Readonly<VtSelectProps> & Readonly<{
210
+ onBlur?: ((event: FocusEvent) => any) | undefined;
211
+ onChange?: ((value: string | number | (string | number)[]) => any) | undefined;
212
+ onFocus?: ((event: FocusEvent) => any) | undefined;
213
+ onFilter?: ((query: string) => any) | undefined;
214
+ "onUpdate:modelValue"?: ((value: string | number | (string | number)[]) => any) | undefined;
215
+ onClear?: (() => any) | undefined;
216
+ "onVisible-change"?: ((visible: boolean) => any) | undefined;
217
+ onValidation?: ((result: {
218
+ isValid: boolean;
219
+ errors: string[];
220
+ }) => any) | undefined;
221
+ "onRemove-tag"?: ((value: string | number) => any) | undefined;
222
+ }>, {
223
+ disabled: boolean;
224
+ loading: boolean;
225
+ size: VtSelectSize;
226
+ placeholder: string;
227
+ maxHeight: number | string;
228
+ placement: "bottom" | "bottom-start" | "bottom-end" | "top" | "top-start" | "top-end";
229
+ status: VtSelectStatus;
230
+ clearable: boolean;
231
+ validateOnInput: boolean;
232
+ validateOnBlur: boolean;
233
+ multiple: boolean;
234
+ collapsedTags: boolean;
235
+ filterable: boolean;
236
+ noDataText: string;
237
+ noMatchText: string;
238
+ loadingText: string;
239
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
240
+ selectRef: HTMLDivElement;
241
+ triggerRef: HTMLDivElement;
242
+ containerRef: HTMLDivElement;
243
+ dropdownRef: HTMLDivElement;
244
+ filterInputRef: CreateComponentPublicInstanceWithMixins<Readonly< VtInputProps> & Readonly<{
245
+ onBlur?: ((event: FocusEvent) => any) | undefined;
246
+ onChange?: ((event: Event) => any) | undefined;
247
+ onClick?: ((event: MouseEvent) => any) | undefined;
248
+ onFocus?: ((event: FocusEvent) => any) | undefined;
249
+ onInput?: ((event: Event) => any) | undefined;
250
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
251
+ onKeypress?: ((event: KeyboardEvent) => any) | undefined;
252
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
253
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
254
+ onClear?: (() => any) | undefined;
255
+ onValidation?: ((result: VtInputValidationResult) => any) | undefined;
256
+ }>, {
257
+ focus(): void;
258
+ blur(): void;
259
+ select(): void;
260
+ clear(): void;
261
+ validate(): boolean;
262
+ clearValidation(): void;
263
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
264
+ getValidationState(): VtInputValidationResult;
265
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
266
+ blur: (event: FocusEvent) => any;
267
+ change: (event: Event) => any;
268
+ click: (event: MouseEvent) => any;
269
+ focus: (event: FocusEvent) => any;
270
+ input: (event: Event) => any;
271
+ keydown: (event: KeyboardEvent) => any;
272
+ keypress: (event: KeyboardEvent) => any;
273
+ keyup: (event: KeyboardEvent) => any;
274
+ "update:modelValue": (value: string | number) => any;
275
+ clear: () => any;
276
+ validation: (result: VtInputValidationResult) => any;
277
+ }, PublicProps, {
278
+ resize: VtInputResize;
279
+ type: VtInputType;
280
+ disabled: boolean;
281
+ size: VtInputSize;
282
+ status: VtInputStatus;
283
+ clearable: boolean;
284
+ showPassword: boolean;
285
+ rows: number;
286
+ autosize: boolean | VtInputAutosizeConfig;
287
+ validateOnInput: boolean;
288
+ validateOnBlur: boolean;
289
+ }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
290
+ textareaRef: HTMLTextAreaElement;
291
+ inputRef: HTMLInputElement;
292
+ }, HTMLDivElement, ComponentProvideOptions, {
293
+ P: {};
294
+ B: {};
295
+ D: {};
296
+ C: {};
297
+ M: {};
298
+ Defaults: {};
299
+ }, Readonly< VtInputProps> & Readonly<{
300
+ onBlur?: ((event: FocusEvent) => any) | undefined;
301
+ onChange?: ((event: Event) => any) | undefined;
302
+ onClick?: ((event: MouseEvent) => any) | undefined;
303
+ onFocus?: ((event: FocusEvent) => any) | undefined;
304
+ onInput?: ((event: Event) => any) | undefined;
305
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
306
+ onKeypress?: ((event: KeyboardEvent) => any) | undefined;
307
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
308
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
309
+ onClear?: (() => any) | undefined;
310
+ onValidation?: ((result: VtInputValidationResult) => any) | undefined;
311
+ }>, {
312
+ focus(): void;
313
+ blur(): void;
314
+ select(): void;
315
+ clear(): void;
316
+ validate(): boolean;
317
+ clearValidation(): void;
318
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
319
+ getValidationState(): VtInputValidationResult;
320
+ }, {}, {}, {}, {
321
+ resize: VtInputResize;
322
+ type: VtInputType;
323
+ disabled: boolean;
324
+ size: VtInputSize;
325
+ status: VtInputStatus;
326
+ clearable: boolean;
327
+ showPassword: boolean;
328
+ rows: number;
329
+ autosize: boolean | VtInputAutosizeConfig;
330
+ validateOnInput: boolean;
331
+ validateOnBlur: boolean;
332
+ }> | null;
333
+ }, HTMLDivElement>;
334
+
335
+ declare const __VLS_component_8: DefineComponent<VtOptionProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
336
+ click: (option: VtSelectOption) => any;
337
+ }, string, PublicProps, Readonly<VtOptionProps> & Readonly<{
338
+ onClick?: ((option: VtSelectOption) => any) | undefined;
339
+ }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
340
+
179
341
  declare type __VLS_Props = VTableProps;
180
342
 
181
343
  declare type __VLS_PublicProps = {
@@ -244,6 +406,118 @@ declare function __VLS_template_6(): {
244
406
  rootEl: HTMLLIElement;
245
407
  };
246
408
 
409
+ declare function __VLS_template_7(): {
410
+ attrs: Partial<{}>;
411
+ slots: {
412
+ default?(_: {}): any;
413
+ };
414
+ refs: {
415
+ selectRef: HTMLDivElement;
416
+ triggerRef: HTMLDivElement;
417
+ containerRef: HTMLDivElement;
418
+ dropdownRef: HTMLDivElement;
419
+ filterInputRef: CreateComponentPublicInstanceWithMixins<Readonly< VtInputProps> & Readonly<{
420
+ onBlur?: ((event: FocusEvent) => any) | undefined;
421
+ onChange?: ((event: Event) => any) | undefined;
422
+ onClick?: ((event: MouseEvent) => any) | undefined;
423
+ onFocus?: ((event: FocusEvent) => any) | undefined;
424
+ onInput?: ((event: Event) => any) | undefined;
425
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
426
+ onKeypress?: ((event: KeyboardEvent) => any) | undefined;
427
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
428
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
429
+ onClear?: (() => any) | undefined;
430
+ onValidation?: ((result: VtInputValidationResult) => any) | undefined;
431
+ }>, {
432
+ focus(): void;
433
+ blur(): void;
434
+ select(): void;
435
+ clear(): void;
436
+ validate(): boolean;
437
+ clearValidation(): void;
438
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
439
+ getValidationState(): VtInputValidationResult;
440
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
441
+ blur: (event: FocusEvent) => any;
442
+ change: (event: Event) => any;
443
+ click: (event: MouseEvent) => any;
444
+ focus: (event: FocusEvent) => any;
445
+ input: (event: Event) => any;
446
+ keydown: (event: KeyboardEvent) => any;
447
+ keypress: (event: KeyboardEvent) => any;
448
+ keyup: (event: KeyboardEvent) => any;
449
+ "update:modelValue": (value: string | number) => any;
450
+ clear: () => any;
451
+ validation: (result: VtInputValidationResult) => any;
452
+ }, PublicProps, {
453
+ resize: VtInputResize;
454
+ type: VtInputType;
455
+ disabled: boolean;
456
+ size: VtInputSize;
457
+ status: VtInputStatus;
458
+ clearable: boolean;
459
+ showPassword: boolean;
460
+ rows: number;
461
+ autosize: boolean | VtInputAutosizeConfig;
462
+ validateOnInput: boolean;
463
+ validateOnBlur: boolean;
464
+ }, false, {}, {}, GlobalComponents, GlobalDirectives, string, {
465
+ textareaRef: HTMLTextAreaElement;
466
+ inputRef: HTMLInputElement;
467
+ }, HTMLDivElement, ComponentProvideOptions, {
468
+ P: {};
469
+ B: {};
470
+ D: {};
471
+ C: {};
472
+ M: {};
473
+ Defaults: {};
474
+ }, Readonly< VtInputProps> & Readonly<{
475
+ onBlur?: ((event: FocusEvent) => any) | undefined;
476
+ onChange?: ((event: Event) => any) | undefined;
477
+ onClick?: ((event: MouseEvent) => any) | undefined;
478
+ onFocus?: ((event: FocusEvent) => any) | undefined;
479
+ onInput?: ((event: Event) => any) | undefined;
480
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
481
+ onKeypress?: ((event: KeyboardEvent) => any) | undefined;
482
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
483
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
484
+ onClear?: (() => any) | undefined;
485
+ onValidation?: ((result: VtInputValidationResult) => any) | undefined;
486
+ }>, {
487
+ focus(): void;
488
+ blur(): void;
489
+ select(): void;
490
+ clear(): void;
491
+ validate(): boolean;
492
+ clearValidation(): void;
493
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
494
+ getValidationState(): VtInputValidationResult;
495
+ }, {}, {}, {}, {
496
+ resize: VtInputResize;
497
+ type: VtInputType;
498
+ disabled: boolean;
499
+ size: VtInputSize;
500
+ status: VtInputStatus;
501
+ clearable: boolean;
502
+ showPassword: boolean;
503
+ rows: number;
504
+ autosize: boolean | VtInputAutosizeConfig;
505
+ validateOnInput: boolean;
506
+ validateOnBlur: boolean;
507
+ }> | null;
508
+ };
509
+ rootEl: HTMLDivElement;
510
+ };
511
+
512
+ declare function __VLS_template_8(): {
513
+ attrs: Partial<{}>;
514
+ slots: {
515
+ default?(_: {}): any;
516
+ };
517
+ refs: {};
518
+ rootEl: any;
519
+ };
520
+
247
521
  declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
248
522
 
249
523
  declare type __VLS_TemplateResult_2 = ReturnType<typeof __VLS_template_2>;
@@ -256,6 +530,10 @@ declare type __VLS_TemplateResult_5 = ReturnType<typeof __VLS_template_5>;
256
530
 
257
531
  declare type __VLS_TemplateResult_6 = ReturnType<typeof __VLS_template_6>;
258
532
 
533
+ declare type __VLS_TemplateResult_7 = ReturnType<typeof __VLS_template_7>;
534
+
535
+ declare type __VLS_TemplateResult_8 = ReturnType<typeof __VLS_template_8>;
536
+
259
537
  declare type __VLS_WithTemplateSlots<T, S> = T & {
260
538
  new (): {
261
539
  $slots: S;
@@ -292,6 +570,18 @@ declare type __VLS_WithTemplateSlots_6<T, S> = T & {
292
570
  };
293
571
  };
294
572
 
573
+ declare type __VLS_WithTemplateSlots_7<T, S> = T & {
574
+ new (): {
575
+ $slots: S;
576
+ };
577
+ };
578
+
579
+ declare type __VLS_WithTemplateSlots_8<T, S> = T & {
580
+ new (): {
581
+ $slots: S;
582
+ };
583
+ };
584
+
295
585
  export declare const DEFAULT_COLUMN_CONFIG: {
296
586
  readonly sortable: true;
297
587
  readonly actionColumn: false;
@@ -571,6 +861,56 @@ export declare const VIcon: DefineComponent<Props, {}, {}, {}, {}, ComponentOpti
571
861
  color: string;
572
862
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
573
863
 
864
+ export declare const VInput: DefineComponent<VtInputProps, {
865
+ focus(): void;
866
+ blur(): void;
867
+ select(): void;
868
+ clear(): void;
869
+ validate(): boolean;
870
+ clearValidation(): void;
871
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
872
+ getValidationState(): VtInputValidationResult;
873
+ }, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
874
+ blur: (event: FocusEvent) => any;
875
+ change: (event: Event) => any;
876
+ click: (event: MouseEvent) => any;
877
+ focus: (event: FocusEvent) => any;
878
+ input: (event: Event) => any;
879
+ keydown: (event: KeyboardEvent) => any;
880
+ keypress: (event: KeyboardEvent) => any;
881
+ keyup: (event: KeyboardEvent) => any;
882
+ "update:modelValue": (value: string | number) => any;
883
+ clear: () => any;
884
+ validation: (result: VtInputValidationResult) => any;
885
+ }, string, PublicProps, Readonly<VtInputProps> & Readonly<{
886
+ onBlur?: ((event: FocusEvent) => any) | undefined;
887
+ onChange?: ((event: Event) => any) | undefined;
888
+ onClick?: ((event: MouseEvent) => any) | undefined;
889
+ onFocus?: ((event: FocusEvent) => any) | undefined;
890
+ onInput?: ((event: Event) => any) | undefined;
891
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
892
+ onKeypress?: ((event: KeyboardEvent) => any) | undefined;
893
+ onKeyup?: ((event: KeyboardEvent) => any) | undefined;
894
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
895
+ onClear?: (() => any) | undefined;
896
+ onValidation?: ((result: VtInputValidationResult) => any) | undefined;
897
+ }>, {
898
+ resize: VtInputResize;
899
+ type: VtInputType;
900
+ disabled: boolean;
901
+ size: VtInputSize;
902
+ status: VtInputStatus;
903
+ clearable: boolean;
904
+ showPassword: boolean;
905
+ rows: number;
906
+ autosize: boolean | VtInputAutosizeConfig;
907
+ validateOnInput: boolean;
908
+ validateOnBlur: boolean;
909
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {
910
+ textareaRef: HTMLTextAreaElement;
911
+ inputRef: HTMLInputElement;
912
+ }, HTMLDivElement>;
913
+
574
914
  export declare const VLoader: DefineComponent<{}, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, true, {}, HTMLSpanElement>;
575
915
 
576
916
  export declare const VModal: __VLS_WithTemplateSlots_2<typeof __VLS_component_2, __VLS_TemplateResult_2["slots"]>;
@@ -636,6 +976,8 @@ export declare interface VModalProps {
636
976
 
637
977
  export declare type VModalSize = 'small' | 'medium' | 'large';
638
978
 
979
+ export declare const VOption: __VLS_WithTemplateSlots_8<typeof __VLS_component_8, __VLS_TemplateResult_8["slots"]>;
980
+
639
981
  export declare const VPagination: DefineComponent<PaginationProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {} & {
640
982
  "update:currentPage": (page: number) => any;
641
983
  "update:pageSize": (size: number) => any;
@@ -653,6 +995,8 @@ export declare const VPagination: DefineComponent<PaginationProps, {}, {}, {}, {
653
995
  maxVisiblePages: number;
654
996
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, HTMLDivElement>;
655
997
 
998
+ export declare const VSelect: __VLS_WithTemplateSlots_7<typeof __VLS_component_7, __VLS_TemplateResult_7["slots"]>;
999
+
656
1000
  export declare const VTable: __VLS_WithTemplateSlots_4<typeof __VLS_component_4, __VLS_TemplateResult_4["slots"]>;
657
1001
 
658
1002
  export declare const VTableColumn: DefineComponent<VTableColumnProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<VTableColumnProps> & Readonly<{}>, {
@@ -756,6 +1100,7 @@ export declare interface VTableProps {
756
1100
  allData?: Record<string, any>[];
757
1101
  /** Конфігурація колонок */
758
1102
  columns?: VTableColumnProps[];
1103
+ hideHeader?: boolean;
759
1104
  }
760
1105
 
761
1106
  export declare type VTableRenderSlot = (props: {
@@ -769,6 +1114,192 @@ export declare interface VTableStyleConfig {
769
1114
  [key: string]: string;
770
1115
  }
771
1116
 
1117
+ export declare interface VtInputAutosizeConfig {
1118
+ minRows?: number;
1119
+ maxRows?: number;
1120
+ }
1121
+
1122
+ export declare interface VtInputEmits {
1123
+ 'update:modelValue': [value: string | number];
1124
+ input: [event: Event];
1125
+ change: [event: Event];
1126
+ focus: [event: FocusEvent];
1127
+ blur: [event: FocusEvent];
1128
+ clear: [];
1129
+ validation: [result: VtInputValidationResult];
1130
+ keydown: [event: KeyboardEvent];
1131
+ keyup: [event: KeyboardEvent];
1132
+ keypress: [event: KeyboardEvent];
1133
+ click: [event: MouseEvent];
1134
+ }
1135
+
1136
+ export declare interface VtInputMethods {
1137
+ focus(): void;
1138
+ blur(): void;
1139
+ select(): void;
1140
+ clear(): void;
1141
+ validate(): boolean;
1142
+ clearValidation(): void;
1143
+ getInputElement(): HTMLInputElement | HTMLTextAreaElement | null;
1144
+ getValidationState(): VtInputValidationResult;
1145
+ }
1146
+
1147
+ export declare interface VtInputProps {
1148
+ modelValue?: string | number;
1149
+ type?: VtInputType;
1150
+ size?: VtInputSize;
1151
+ status?: VtInputStatus;
1152
+ disabled?: boolean;
1153
+ clearable?: boolean;
1154
+ showPassword?: boolean;
1155
+ label?: string;
1156
+ placeholder?: string;
1157
+ helperText?: string;
1158
+ errorMessage?: string;
1159
+ id?: string;
1160
+ name?: string;
1161
+ tabindex?: number;
1162
+ autocomplete?: string;
1163
+ prefixIcon?: IconName;
1164
+ suffixIcon?: IconName;
1165
+ rows?: number;
1166
+ cols?: number;
1167
+ resize?: VtInputResize;
1168
+ autosize?: boolean | VtInputAutosizeConfig;
1169
+ required?: boolean;
1170
+ validateOnInput?: boolean;
1171
+ validateOnBlur?: boolean;
1172
+ showAllErrors?: boolean;
1173
+ requiredMessage?: string;
1174
+ emailMessage?: string;
1175
+ urlMessage?: string;
1176
+ numberMessage?: string;
1177
+ minlengthMessage?: string;
1178
+ maxlengthMessage?: string;
1179
+ minMessage?: string;
1180
+ maxMessage?: string;
1181
+ patternMessage?: string;
1182
+ customValidatorMessage?: string;
1183
+ minlength?: number;
1184
+ maxlength?: number;
1185
+ min?: number;
1186
+ max?: number;
1187
+ step?: number;
1188
+ pattern?: string;
1189
+ customValidator?: (value: string | number) => boolean;
1190
+ }
1191
+
1192
+ export declare type VtInputResize = 'none' | 'both' | 'horizontal' | 'vertical';
1193
+
1194
+ export declare type VtInputSize = 'small' | 'medium' | 'large';
1195
+
1196
+ export declare type VtInputStatus = 'default' | 'success' | 'error' | 'warning';
1197
+
1198
+ export declare type VtInputType = 'text' | 'email' | 'password' | 'number' | 'url' | 'tel' | 'search' | 'textarea';
1199
+
1200
+ export declare interface VtInputValidationResult {
1201
+ isValid: boolean;
1202
+ errors: string[];
1203
+ }
1204
+
1205
+ export declare interface VtOptionEmits {
1206
+ click: [option: VtSelectOption];
1207
+ }
1208
+
1209
+ export declare interface VtOptionProps {
1210
+ label: string;
1211
+ value: string | number;
1212
+ disabled?: boolean;
1213
+ icon?: string;
1214
+ group?: string;
1215
+ }
1216
+
1217
+ export declare interface VtSelectContext {
1218
+ selectValue: string | number | Array<string | number>;
1219
+ multiple: boolean;
1220
+ filterable: boolean;
1221
+ filterQuery: string;
1222
+ handleOptionClick: (option: VtSelectOption) => void;
1223
+ isOptionSelected: (value: string | number) => boolean;
1224
+ isOptionVisible: (option: VtSelectOption) => boolean;
1225
+ registerOption: (option: VtSelectOption) => void;
1226
+ unregisterOption: (value: string | number) => void;
1227
+ }
1228
+
1229
+ export declare const VtSelectContextKey: unique symbol;
1230
+
1231
+ export declare interface VtSelectEmits {
1232
+ 'update:modelValue': [value: string | number | Array<string | number>];
1233
+ change: [value: string | number | Array<string | number>];
1234
+ focus: [event: FocusEvent];
1235
+ blur: [event: FocusEvent];
1236
+ clear: [];
1237
+ 'visible-change': [visible: boolean];
1238
+ 'remove-tag': [value: string | number];
1239
+ filter: [query: string];
1240
+ validation: [result: {
1241
+ isValid: boolean;
1242
+ errors: string[];
1243
+ }];
1244
+ }
1245
+
1246
+ export declare interface VtSelectMethods {
1247
+ focus(): void;
1248
+ blur(): void;
1249
+ clear(): void;
1250
+ validate(): boolean;
1251
+ clearValidation(): void;
1252
+ getSelectedOptions(): VtSelectOption[];
1253
+ getValidationState(): {
1254
+ isValid: boolean;
1255
+ errors: string[];
1256
+ };
1257
+ registerOption(option: VtSelectOption): void;
1258
+ unregisterOption(value: string | number): void;
1259
+ }
1260
+
1261
+ export declare interface VtSelectOption {
1262
+ label: string;
1263
+ value: string | number;
1264
+ disabled?: boolean;
1265
+ icon?: string;
1266
+ group?: string;
1267
+ }
1268
+
1269
+ export declare interface VtSelectProps {
1270
+ modelValue?: string | number | Array<string | number>;
1271
+ multiple?: boolean;
1272
+ collapsedTags?: boolean;
1273
+ size?: VtSelectSize;
1274
+ status?: VtSelectStatus;
1275
+ disabled?: boolean;
1276
+ clearable?: boolean;
1277
+ filterable?: boolean;
1278
+ remote?: boolean;
1279
+ loading?: boolean;
1280
+ label?: string;
1281
+ placeholder?: string;
1282
+ helperText?: string;
1283
+ errorMessage?: string;
1284
+ noDataText?: string;
1285
+ noMatchText?: string;
1286
+ loadingText?: string;
1287
+ id?: string;
1288
+ name?: string;
1289
+ tabindex?: number;
1290
+ maxHeight?: number | string;
1291
+ placement?: 'bottom' | 'bottom-start' | 'bottom-end' | 'top' | 'top-start' | 'top-end';
1292
+ filterMethod?: (query: string, option: VtSelectOption) => boolean;
1293
+ required?: boolean;
1294
+ validateOnInput?: boolean;
1295
+ validateOnBlur?: boolean;
1296
+ requiredMessage?: string;
1297
+ }
1298
+
1299
+ export declare type VtSelectSize = 'small' | 'medium' | 'large';
1300
+
1301
+ export declare type VtSelectStatus = 'default' | 'success' | 'error' | 'warning';
1302
+
772
1303
  declare const VUIPlugin: {
773
1304
  install(app: App, options?: VUIPluginOptions): void;
774
1305
  };