@qynpm/ui 1.0.35 → 1.0.36

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.
Files changed (65) hide show
  1. package/README.md +63 -28
  2. package/dist/index.cjs +4 -3
  3. package/dist/index.mjs +60 -58
  4. package/dist/qy-action-bar/index.cjs +1 -1
  5. package/dist/qy-action-bar/index.mjs +1 -1
  6. package/dist/qy-dialog/index.cjs +1 -1
  7. package/dist/qy-dialog/index.mjs +1 -1
  8. package/dist/qy-drawer/index.cjs +1 -1
  9. package/dist/qy-drawer/index.mjs +1 -1
  10. package/dist/qy-file-picker/index.cjs +1 -1
  11. package/dist/qy-file-picker/index.mjs +1 -1
  12. package/dist/qy-form-section/index.cjs +1 -1
  13. package/dist/qy-form-section/index.mjs +1 -1
  14. package/dist/qy-image-upload/index.cjs +1 -1
  15. package/dist/qy-image-upload/index.mjs +1 -1
  16. package/dist/qy-input-number/index.cjs +1 -1
  17. package/dist/qy-input-number/index.mjs +1 -1
  18. package/dist/qy-input-tag/index.cjs +1 -0
  19. package/dist/qy-input-tag/index.mjs +7 -0
  20. package/dist/qy-legacy-selection-dialog/index.cjs +1 -1
  21. package/dist/qy-legacy-selection-dialog/index.mjs +1 -1
  22. package/dist/qy-money-input/index.cjs +1 -1
  23. package/dist/qy-money-input/index.mjs +5 -2
  24. package/dist/qy-record-quote-search/index.cjs +1 -1
  25. package/dist/qy-record-quote-search/index.mjs +1 -1
  26. package/dist/qy-remark-image/index.cjs +1 -1
  27. package/dist/qy-remark-image/index.mjs +1 -1
  28. package/dist/qy-remote-select/index.cjs +1 -1
  29. package/dist/qy-remote-select/index.mjs +1 -1
  30. package/dist/qy-search-input/index.cjs +1 -1
  31. package/dist/qy-search-input/index.mjs +1 -1
  32. package/dist/qy-selection-dialog/index.cjs +1 -1
  33. package/dist/qy-selection-dialog/index.mjs +1 -1
  34. package/dist/qy-upload/index.cjs +1 -1
  35. package/dist/qy-upload/index.mjs +5 -2
  36. package/dist/shared/index-BYX0biqw.mjs +766 -0
  37. package/dist/shared/index-BxxwEr52.mjs +107 -0
  38. package/dist/shared/index-C1i-hd-W.cjs +1 -0
  39. package/dist/shared/index-D654b42n.mjs +2754 -0
  40. package/dist/shared/index-DnNIseRJ.cjs +1 -0
  41. package/dist/shared/index-aIqtIYsu.cjs +1 -0
  42. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BiIgNax-.cjs +1 -0
  43. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DIWWHODS.mjs +197 -0
  44. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DwFGEW4B.mjs +143 -0
  45. package/dist/shared/index.vue_vue_type_script_setup_true_lang-ccFLNRry.cjs +1 -0
  46. package/dist/shared/index.vue_vue_type_style_index_0_lang-B1FgJZbw.mjs +148 -0
  47. package/dist/shared/index.vue_vue_type_style_index_0_lang-DVXf-yUs.cjs +1 -0
  48. package/index.d.ts +82 -25
  49. package/package.json +489 -483
  50. package/qy-file-picker/index.d.ts +4 -1
  51. package/qy-image-preview/index.d.ts +0 -1
  52. package/qy-image-upload/index.d.ts +69 -12
  53. package/qy-input/index.d.ts +76 -18
  54. package/qy-input-number/index.d.ts +64 -30
  55. package/qy-input-tag/index.d.ts +69 -0
  56. package/qy-money-input/index.d.ts +87 -12
  57. package/qy-upload/index.d.ts +99 -5
  58. package/dist/shared/index-BekN1g_r.mjs +0 -3541
  59. package/dist/shared/index-BkX9xlbI.cjs +0 -1
  60. package/dist/shared/index-C_1KP3l9.mjs +0 -129
  61. package/dist/shared/index-Ce_hvR--.cjs +0 -1
  62. package/dist/shared/index.vue_vue_type_style_index_0_lang-B0CXLnL1.mjs +0 -132
  63. package/dist/shared/index.vue_vue_type_style_index_0_lang-DccRGtZE.cjs +0 -1
  64. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-q37rBg6Z.mjs → index.vue_vue_type_script_setup_true_lang-CGsXVhJy.mjs} +0 -0
  65. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-CglCPcj-.cjs → index.vue_vue_type_script_setup_true_lang-Dk83TGiU.cjs} +0 -0
@@ -33,7 +33,10 @@ export type QyFilePickerEmits = {
33
33
  invalid: (detail: QyFilePickerInvalidDetail) => void
34
34
  }
35
35
 
36
- declare const QyFilePicker: DefineComponent<
36
+ /**
37
+ * @deprecated 请使用 QyUpload 的 `variant="file-list"` 与 `autoUpload=false`。
38
+ */
39
+ declare const QyFilePicker: DefineComponent<
37
40
  QyFilePickerProps,
38
41
  QyFilePickerExposed,
39
42
  {},
@@ -17,5 +17,4 @@ export function openQyImagePreview(options: {
17
17
  close(): void
18
18
  }
19
19
 
20
-
21
20
  export default QyImagePreview
@@ -1,12 +1,69 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- /**
4
- * QyImageUpload 单组件入口类型声明。
5
- *
6
- * 这里同时声明 DefineComponent Plugin:
7
- * - DefineComponent 用于模板、TSX 或局部 components 注册时获得组件类型。
8
- * - Plugin 用于 app.use(QyImageUpload) 时通过 Vue 插件类型校验。
9
- */
10
- declare const QyImageUpload: DefineComponent<any, any, any> & Plugin
11
-
12
- export default QyImageUpload
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin
5
+ } from 'vue'
6
+ import type { QyUploadRequest, QyUploadValue } from '../qy-upload'
7
+
8
+ export type QyImageUploadMode = 'default' | 'voucher'
9
+
10
+ export interface QyImageUploadProps {
11
+ modelValue?: string | string[]
12
+ api?: string
13
+ name?: string
14
+ disabled?: boolean
15
+ multiple?: boolean
16
+ /** @deprecated 旧 CopyImgUpload 凭证桥接;新页面使用普通图片配置。 */
17
+ mode?: QyImageUploadMode
18
+ /** @deprecated 旧 CopyImgUpload 凭证桥接;新页面使用普通图片配置。 */
19
+ voucher?: boolean
20
+ fileType?: string[]
21
+ fileSize?: number
22
+ isShowTip?: boolean
23
+ limit?: number
24
+ tokenKey?: string
25
+ supportVideo?: boolean
26
+ size?: string
27
+ disableDrag?: boolean
28
+ showPasteInput?: boolean
29
+ pastePlaceholder?: string
30
+ callBack?: (value: QyUploadValue) => void
31
+ extraData?: Record<string, unknown>
32
+ uploadRequest?: QyUploadRequest
33
+ }
34
+
35
+ export interface QyImageUploadExposed {
36
+ openFileDialog(): void
37
+ clearFiles(): void
38
+ getPathList(): string[]
39
+ /** @deprecated 旧 CopyImgUpload 读值桥接。 */
40
+ getFullPathList(): string[]
41
+ /** @deprecated 旧 CopyImgUpload 读值桥接。 */
42
+ readonly fullPathList: string[]
43
+ readonly pathList: string[]
44
+ getValue(): string | string[]
45
+ }
46
+
47
+ export type QyImageUploadEmits = {
48
+ 'update:modelValue': (value: string | string[]) => void
49
+ change: (value: string | string[]) => void
50
+ success: (value: string | string[], response: unknown) => void
51
+ error: (error: unknown) => void
52
+ remove: (file: unknown, files: unknown[]) => void
53
+ /** @deprecated 旧 CopyImgUpload 成功通知桥接。 */
54
+ updateImg: (url: string) => void
55
+ }
56
+
57
+ declare const QyImageUpload: DefineComponent<
58
+ QyImageUploadProps,
59
+ QyImageUploadExposed,
60
+ {},
61
+ {},
62
+ {},
63
+ ComponentOptionsMixin,
64
+ ComponentOptionsMixin,
65
+ QyImageUploadEmits
66
+ > &
67
+ Plugin
68
+
69
+ export default QyImageUpload
@@ -1,21 +1,79 @@
1
- import type { InputAutoSize, InputProps, InputType } from 'element-plus'
2
- import type { DefineComponent, Plugin } from 'vue'
3
-
4
- export type QyInputValue = string
5
- export type QyInputModelValue = string | number | null | undefined
6
- export type QyInputType = InputType
7
- export type QyInputSize = 'small' | 'default' | 'large'
8
- export type QyInputTrimMode = 'none' | 'blur' | 'change'
9
-
10
- export interface QyInputProps
11
- extends Omit<InputProps, 'modelValue' | 'type' | 'size' | 'autosize'> {
12
- modelValue?: QyInputModelValue
13
- type?: QyInputType
14
- size?: QyInputSize
15
- autosize?: InputAutoSize
16
- removeSpace?: boolean
17
- trimMode?: QyInputTrimMode
18
- }
1
+ import type { Component, DefineComponent, Plugin, StyleValue } from 'vue'
2
+
3
+ export type QyInputValue = string
4
+ export type QyInputModelValue = string | number | null | undefined
5
+ export type QyInputType =
6
+ | 'text'
7
+ | 'textarea'
8
+ | 'number'
9
+ | 'password'
10
+ | 'email'
11
+ | 'search'
12
+ | 'tel'
13
+ | 'url'
14
+ | (string & {})
15
+ export type QyInputSize = 'small' | 'default' | 'large'
16
+ export type QyInputTrimMode = 'none' | 'blur' | 'change'
17
+ export type QyInputAutoSize =
18
+ | {
19
+ minRows?: number
20
+ maxRows?: number
21
+ }
22
+ | boolean
23
+ export type QyInputIcon = string | Component
24
+ export type QyInputInputMode =
25
+ | 'none'
26
+ | 'text'
27
+ | 'tel'
28
+ | 'url'
29
+ | 'email'
30
+ | 'numeric'
31
+ | 'decimal'
32
+ | 'search'
33
+ export type QyInputModelModifiers = {
34
+ lazy?: true
35
+ number?: true
36
+ trim?: true
37
+ }
38
+ export type QyInputStyle = StyleValue
39
+
40
+ export interface QyInputProps {
41
+ id?: string
42
+ disabled?: boolean
43
+ modelValue?: QyInputModelValue
44
+ modelModifiers?: QyInputModelModifiers
45
+ maxlength?: string | number
46
+ minlength?: string | number
47
+ type?: QyInputType
48
+ size?: QyInputSize
49
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical'
50
+ autosize?: QyInputAutoSize
51
+ autocomplete?: string
52
+ formatter?: (value: string) => string
53
+ parser?: (value: string) => string
54
+ placeholder?: string
55
+ form?: string
56
+ readonly?: boolean
57
+ clearable?: boolean
58
+ clearIcon?: QyInputIcon
59
+ showPassword?: boolean
60
+ showWordLimit?: boolean
61
+ wordLimitPosition?: 'inside' | 'outside'
62
+ suffixIcon?: QyInputIcon
63
+ prefixIcon?: QyInputIcon
64
+ containerRole?: string
65
+ tabindex?: string | number
66
+ validateEvent?: boolean
67
+ inputStyle?: QyInputStyle
68
+ autofocus?: boolean
69
+ rows?: number
70
+ ariaLabel?: string
71
+ inputmode?: QyInputInputMode
72
+ name?: string
73
+ countGraphemes?: (value: string) => number
74
+ removeSpace?: boolean
75
+ trimMode?: QyInputTrimMode
76
+ }
19
77
 
20
78
  export type QyInputEmits = {
21
79
  'update:modelValue': (value: QyInputValue) => void
@@ -1,21 +1,35 @@
1
- import type { InputNumberProps } from 'element-plus'
2
- import type { DefineComponent, Plugin } from 'vue'
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps,
6
+ SlotsType
7
+ } from 'vue'
3
8
 
4
9
  export type QyInputNumberValue = number | null | undefined
5
10
  export type QyInputNumberClearValue = 'min' | 'max' | number | null
6
- export type QyInputNumberControlsPosition = '' | 'right'
7
- export type QyInputNumberSize = 'small' | 'default' | 'large'
8
-
9
- export interface QyInputNumberProps
10
- extends Omit<
11
- InputNumberProps,
12
- 'modelValue' | 'valueOnClear' | 'controlsPosition' | 'size'
13
- > {
14
- modelValue?: QyInputNumberValue
15
- valueOnClear?: QyInputNumberClearValue
16
- controlsPosition?: QyInputNumberControlsPosition
17
- size?: QyInputNumberSize
18
- }
11
+ export type QyInputNumberControlsPosition = '' | 'right'
12
+ export type QyInputNumberSize = 'small' | 'default' | 'large'
13
+
14
+ export interface QyInputNumberProps {
15
+ id?: string
16
+ step?: number
17
+ stepStrictly?: boolean
18
+ max?: number
19
+ min?: number
20
+ modelValue?: QyInputNumberValue
21
+ readonly?: boolean
22
+ disabled?: boolean
23
+ size?: QyInputNumberSize
24
+ controls?: boolean
25
+ controlsPosition?: QyInputNumberControlsPosition
26
+ valueOnClear?: QyInputNumberClearValue
27
+ name?: string
28
+ placeholder?: string
29
+ precision?: number
30
+ validateEvent?: boolean
31
+ ariaLabel?: string
32
+ }
19
33
 
20
34
  export type QyInputNumberEmits = {
21
35
  'update:modelValue': (value: QyInputNumberValue) => void
@@ -25,21 +39,41 @@ export type QyInputNumberEmits = {
25
39
  blur: (event: FocusEvent) => void
26
40
  }
27
41
 
28
- export interface QyInputNumberExposed {
29
- focus(): void
30
- blur(): void
31
- }
32
-
33
- declare const QyInputNumber: DefineComponent<
34
- QyInputNumberProps,
35
- QyInputNumberExposed,
36
- {},
37
- {},
38
- {},
39
- {},
40
- {},
41
- QyInputNumberEmits
42
- > & Plugin
42
+ export interface QyInputNumberExposed {
43
+ focus(): void
44
+ blur(): void
45
+ }
46
+
47
+ export interface QyInputNumberSlots {
48
+ prefix?: () => unknown
49
+ suffix?: () => unknown
50
+ 'increase-icon'?: () => unknown
51
+ 'decrease-icon'?: () => unknown
52
+ }
53
+
54
+ type QyInputNumberComponentProps = QyInputNumberProps & {
55
+ 'onUpdate:modelValue'?: QyInputNumberEmits['update:modelValue']
56
+ onInput?: QyInputNumberEmits['input']
57
+ onChange?: QyInputNumberEmits['change']
58
+ onFocus?: QyInputNumberEmits['focus']
59
+ onBlur?: QyInputNumberEmits['blur']
60
+ }
61
+
62
+ declare const QyInputNumber: DefineComponent<
63
+ QyInputNumberProps,
64
+ QyInputNumberExposed,
65
+ {},
66
+ {},
67
+ {},
68
+ ComponentOptionsMixin,
69
+ ComponentOptionsMixin,
70
+ QyInputNumberEmits,
71
+ string,
72
+ PublicProps,
73
+ QyInputNumberComponentProps,
74
+ {},
75
+ SlotsType<QyInputNumberSlots>
76
+ > & Plugin
43
77
 
44
78
  export { QyInputNumber }
45
79
  export default QyInputNumber
@@ -0,0 +1,69 @@
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin
5
+ } from 'vue'
6
+ import type { QyTagEffect, QyTagTone } from '../qy-tag'
7
+
8
+ export type QyInputTagModelValue = string[]
9
+ export type QyInputTagTone = QyTagTone
10
+ export type QyInputTagEffect = QyTagEffect
11
+ export type QyInputTagSize = 'small' | 'default' | 'large'
12
+ export type QyInputTagTrigger = 'enter' | 'space'
13
+
14
+ export interface QyInputTagProps {
15
+ modelValue?: QyInputTagModelValue
16
+ max?: number
17
+ trigger?: QyInputTagTrigger
18
+ tagTone?: QyInputTagTone
19
+ tagEffect?: QyInputTagEffect
20
+ size?: QyInputTagSize
21
+ clearable?: boolean
22
+ disabled?: boolean
23
+ readonly?: boolean
24
+ placeholder?: string
25
+ autofocus?: boolean
26
+ validateEvent?: boolean
27
+ id?: string
28
+ tabindex?: string | number
29
+ maxlength?: string | number
30
+ minlength?: string | number
31
+ autocomplete?: string
32
+ ariaLabel?: string
33
+ }
34
+
35
+ export interface QyInputTagSlots {
36
+ tag?: (props: { value: string; index: number }) => unknown
37
+ prefix?: () => unknown
38
+ suffix?: () => unknown
39
+ }
40
+
41
+ export type QyInputTagEmits = {
42
+ 'update:modelValue': (value: QyInputTagModelValue) => void
43
+ change: (value: QyInputTagModelValue) => void
44
+ input: (value: string) => void
45
+ add: (value: string) => void
46
+ remove: (value: string, index: number) => void
47
+ clear: () => void
48
+ focus: (event: FocusEvent) => void
49
+ blur: (event: FocusEvent) => void
50
+ }
51
+
52
+ export interface QyInputTagExposed {
53
+ focus(): void
54
+ blur(): void
55
+ }
56
+
57
+ declare const QyInputTag: DefineComponent<
58
+ QyInputTagProps,
59
+ QyInputTagExposed,
60
+ {},
61
+ {},
62
+ {},
63
+ ComponentOptionsMixin,
64
+ ComponentOptionsMixin,
65
+ QyInputTagEmits
66
+ > & Plugin
67
+
68
+ export { QyInputTag }
69
+ export default QyInputTag
@@ -1,12 +1,87 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- /**
4
- * QyMoneyInput 单组件入口类型声明。
5
- *
6
- * 这里同时声明 DefineComponent 和 Plugin:
7
- * - DefineComponent 用于模板、TSX 或局部 components 注册时获得组件类型。
8
- * - Plugin 用于 app.use(QyMoneyInput) 时通过 Vue 插件类型校验。
9
- */
10
- declare const QyMoneyInput: DefineComponent<any, any, any> & Plugin
11
-
12
- export default QyMoneyInput
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps,
6
+ SlotsType
7
+ } from 'vue'
8
+
9
+ export type QyMoneyInputValue = string | number | null | undefined
10
+ export type QyMoneyInputFormatTrigger = 'blur' | 'change' | 'none'
11
+ export type QyMoneyInputSize = 'small' | 'default' | 'large'
12
+
13
+ export interface QyMoneyInputProps {
14
+ modelValue?: QyMoneyInputValue
15
+ precision?: number
16
+ min?: number
17
+ max?: number
18
+ allowNegative?: boolean
19
+ formatTrigger?: QyMoneyInputFormatTrigger
20
+ emptyValue?: string | number
21
+ placeholder?: string
22
+ clearable?: boolean
23
+ disabled?: boolean
24
+ readonly?: boolean
25
+ size?: QyMoneyInputSize
26
+ name?: string
27
+ id?: string
28
+ autocomplete?: string
29
+ autofocus?: boolean
30
+ maxlength?: string | number
31
+ minlength?: string | number
32
+ tabindex?: string | number
33
+ ariaLabel?: string
34
+ }
35
+
36
+ export type QyMoneyInputEmits = {
37
+ 'update:modelValue': (value: string) => void
38
+ input: (value: string) => void
39
+ change: (value: string) => void
40
+ focus: (event: FocusEvent) => void
41
+ blur: (event: FocusEvent) => void
42
+ clear: () => void
43
+ enter: (event: KeyboardEvent) => void
44
+ }
45
+
46
+ export interface QyMoneyInputExposed {
47
+ focus(): void
48
+ blur(): void
49
+ select(): void
50
+ clear(): void
51
+ }
52
+
53
+ export interface QyMoneyInputSlots {
54
+ prefix?: () => unknown
55
+ suffix?: () => unknown
56
+ prepend?: () => unknown
57
+ append?: () => unknown
58
+ }
59
+
60
+ type QyMoneyInputComponentProps = QyMoneyInputProps & {
61
+ 'onUpdate:modelValue'?: QyMoneyInputEmits['update:modelValue']
62
+ onInput?: QyMoneyInputEmits['input']
63
+ onChange?: QyMoneyInputEmits['change']
64
+ onFocus?: QyMoneyInputEmits['focus']
65
+ onBlur?: QyMoneyInputEmits['blur']
66
+ onClear?: QyMoneyInputEmits['clear']
67
+ onEnter?: QyMoneyInputEmits['enter']
68
+ }
69
+
70
+ declare const QyMoneyInput: DefineComponent<
71
+ QyMoneyInputProps,
72
+ QyMoneyInputExposed,
73
+ {},
74
+ {},
75
+ {},
76
+ ComponentOptionsMixin,
77
+ ComponentOptionsMixin,
78
+ QyMoneyInputEmits,
79
+ string,
80
+ PublicProps,
81
+ QyMoneyInputComponentProps,
82
+ {},
83
+ SlotsType<QyMoneyInputSlots>
84
+ > & Plugin
85
+
86
+ export { QyMoneyInput }
87
+ export default QyMoneyInput
@@ -1,5 +1,99 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- declare const QyUpload: DefineComponent<any, any, any> & Plugin
4
-
5
- export default QyUpload
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin
5
+ } from 'vue'
6
+
7
+ export type QyUploadVariant = 'media-card' | 'file-list'
8
+ export type QyUploadValueFormat = 'object' | 'array' | 'string'
9
+ export type QyUploadInvalidCode = 'extension' | 'size'
10
+
11
+ export interface QyUploadValue {
12
+ files: string[]
13
+ text: string
14
+ }
15
+
16
+ export interface QyUploadResult {
17
+ url: string
18
+ name?: string
19
+ }
20
+
21
+ export interface QyUploadRequestContext {
22
+ file: File
23
+ formData: FormData
24
+ api: string
25
+ name: string
26
+ tokenKey: string
27
+ extraData: Record<string, unknown>
28
+ }
29
+
30
+ export type QyUploadRequest = (
31
+ context: QyUploadRequestContext
32
+ ) => Promise<QyUploadResult>
33
+
34
+ export interface QyUploadInvalidDetail {
35
+ code: QyUploadInvalidCode
36
+ file: File
37
+ message: string
38
+ }
39
+
40
+ export interface QyUploadProps {
41
+ modelValue?: QyUploadValue | string[] | string
42
+ selectedFiles?: File[]
43
+ autoUpload?: boolean
44
+ variant?: QyUploadVariant
45
+ defaultValue?: { files?: string | string[]; text?: string }
46
+ valueFormat?: QyUploadValueFormat
47
+ showText?: boolean
48
+ showPasteInput?: boolean
49
+ pastePlaceholder?: string
50
+ multiple?: boolean
51
+ disabled?: boolean
52
+ fileType?: string[]
53
+ fileSize?: number
54
+ limit?: number
55
+ isShowTip?: boolean
56
+ api?: string
57
+ name?: string
58
+ tokenKey?: string
59
+ supportVideo?: boolean
60
+ size?: string
61
+ disableDrag?: boolean
62
+ callBack?: (value: QyUploadValue) => void
63
+ extraData?: Record<string, unknown>
64
+ uploadRequest?: QyUploadRequest
65
+ }
66
+
67
+ export interface QyUploadExposed {
68
+ openFileDialog(): void
69
+ clearFiles(): void
70
+ getPathList(): string[]
71
+ getValue(): QyUploadValue
72
+ getModelValue(): QyUploadValue | string[] | string
73
+ }
74
+
75
+ export type QyUploadEmits = {
76
+ 'update:modelValue': (value: QyUploadValue | string[] | string) => void
77
+ 'update:selectedFiles': (files: File[]) => void
78
+ selectedFilesChange: (files: File[]) => void
79
+ change: (value: QyUploadValue) => void
80
+ success: (result: QyUploadResult) => void
81
+ error: (error: unknown) => void
82
+ remove: (file: unknown, files: unknown[]) => void
83
+ invalid: (detail: QyUploadInvalidDetail) => void
84
+ }
85
+
86
+ declare const QyUpload: DefineComponent<
87
+ QyUploadProps,
88
+ QyUploadExposed,
89
+ {},
90
+ {},
91
+ {},
92
+ ComponentOptionsMixin,
93
+ ComponentOptionsMixin,
94
+ QyUploadEmits
95
+ > &
96
+ Plugin
97
+
98
+ export { QyUpload }
99
+ export default QyUpload