@otwb/ui 2.0.13 → 2.0.15

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.
@@ -1,448 +1,448 @@
1
- import {
2
- CheckboxGroupProps, DataTableInst as NDataTableInst, DataTableProps as NDataTableProps,
3
- FormItemGiProps as NFormItemGiProps, FormProps as NFormProps, GridItemProps as NGridItemProps, GridProps as NGridProps,
4
- PopoverProps,
5
- RadioGroupProps, TransferProps,
6
- } from 'ithinkdt-ui'
7
- import Sortable from 'sortablejs'
8
- import { AllowedComponentProps, MaybeRef, MaybeRefOrGetter, VNodeChild } from 'vue'
9
- import type { CSSProperties, HTMLAttributes, TemplateRef } from 'vue'
10
-
11
- import { GenericCtx, GenericExposed, GenericReturn, MaybeArray, MaybePromise, PublicProps } from '@otwb/common'
12
- import { DictItem } from '@otwb/common/dict'
13
- import { FormItem, PageParams, PresetKeyField, SortParams, TableActionRenderParam, TableColumn, ValidationResults, _DataWithPresetKeyField } from '@otwb/page'
14
-
15
- declare module '@otwb/page' {
16
-
17
- interface FormRenderExtraOptions {
18
- showColon?: MaybeRef<boolean | undefined>
19
- labelWidth?: MaybeRef<string | number | undefined>
20
- labelAlign?: MaybeRef<'left' | 'right' | 'center' | undefined>
21
- labelPlacement?: MaybeRef<'left' | 'top' | undefined>
22
- showRequireMark?: MaybeRef<boolean | undefined>
23
- requireMarkPlacement?: MaybeRef<'left' | 'right' | 'right-hanging' | undefined>
24
- showFeedback?: MaybeRef<boolean | undefined>
25
- }
26
-
27
- type FormItemOptionKeys = 'size' | 'showLabel' | 'labelWidth' | 'labelStyle' | 'labelAlign' | 'labelPlacement' | 'labelProps'
28
- | 'showRequireMark' | 'requireMarkPlacement' | 'showFeedback' | 'feedbackClass' | 'feedbackStyle' | 'span' | 'offset'
29
-
30
- type FormItemOptionExtra = {
31
- [K in FormItemOptionKeys]?: MaybeRef<NFormItemGiProps[K]>
32
- }
33
-
34
- // eslint-disable-next-line ts/no-unused-vars
35
- interface FormItemOptions<Model extends {}> extends FormItemOptionExtra {
36
- showColon?: MaybeRef<boolean | undefined>
37
- rowSpan?: MaybeRef<number | undefined>
38
- tooltip?: MaybeRefOrGetter<VNodeChild | undefined>
39
- tooltipPlacement?: MaybeRef<'bottom' | 'icon' | undefined>
40
- showTooltipWhenReadonly?: MaybeRef<boolean | undefined>
41
- }
42
- // eslint-disable-next-line ts/no-unused-vars
43
- interface FormItem<Model extends {}> extends Pick<NFormItemGiProps, FormItemOptionKeys> {
44
- showColon?: boolean | undefined
45
- rowSpan?: number | undefined
46
- tooltip?: VNodeChild | (() => VNodeChild) | undefined
47
- tooltipPlacement?: 'bottom' | 'icon' | undefined
48
- showTooltipWhenReadonly?: boolean | undefined
49
- }
50
-
51
- interface FormItemRenderExtraParams {
52
- size?: 'small' | 'medium' | 'large' | undefined
53
- }
54
-
55
- }
56
-
57
- export type DataFormProps<Data extends {}> = Omit<NFormProps, 'model' | 'rules' | 'onSubmit' | 'validateMessages'> & {
58
- items: FormItem<Data>[]
59
- model: Data
60
- readonly?: boolean | undefined
61
- grid?: boolean | NGridProps | undefined
62
- validation?: { [k in keyof Data]?: ValidationResults } | undefined
63
- showColon?: boolean | undefined
64
- loading?: boolean | undefined
65
- showAction?: boolean | NGridItemProps & AllowedComponentProps | undefined
66
- actionAlign?: 'start' | 'center' | 'end'
67
- submitText?: VNodeChild | undefined
68
- resetText?: VNodeChild | undefined
69
- cancelText?: VNodeChild | undefined
70
- showSubmitBtn?: boolean | undefined
71
- showResetBtn?: boolean | undefined
72
- showCancelBtn?: boolean | undefined
73
- submitDisabled?: boolean | undefined
74
- succeeded?: boolean | undefined
75
- successText?: VNodeChild | undefined
76
-
77
- tooltipPlacement?: 'bottom' | 'icon' | undefined
78
- onSubmit?: MaybeArray<(model: Data) => void> | undefined
79
- onRest?: MaybeArray<() => void> | undefined
80
- }
81
-
82
- export type DataFormEmits<Data extends {}> = {
83
- (e: 'submit', model: Data): void
84
- (e: 'reset'): void
85
- }
86
-
87
- export type DataFormSlots<_Data extends {}> = {
88
- action?: (params: { cols: number, spans: number, overflow: boolean }) => VNodeChild
89
- }
90
-
91
- export type DataFormInst = {
92
- }
93
-
94
- export declare function DataForm<Data extends {}>(
95
- props: DataFormProps<Data> & PublicProps,
96
- ctx?: Pick<GenericCtx<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>, 'attrs' | 'emit' | 'slots'>,
97
- expose?: (exposed?: GenericExposed<DataFormInst>) => void,
98
- setup?: GenericCtx<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>,
99
- ): GenericReturn<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>
100
-
101
- export type DataFilterProps<Data extends {}> = Omit<NFormProps, 'model' | 'rules' | 'onSubmit' | 'validateMessages'> & {
102
- items: FormItem<Data>[]
103
- model: Data
104
- loading?: boolean | undefined
105
- filterOnReset?: boolean | undefined
106
- filterText?: VNodeChild | undefined
107
- resetText?: VNodeChild | undefined
108
- grid?: boolean | Omit<NGridProps, 'collapsed' | 'collapsedRows'> | undefined
109
- collapsible?: boolean | undefined
110
- defaultCollapsed?: boolean | undefined
111
- collapsedRows?: number | undefined
112
- showColon?: boolean | undefined
113
- tooltipPlacement?: 'bottom' | 'icon' | undefined
114
- customizable?: boolean | undefined
115
- onFilter?: MaybeArray<(model: Data) => void> | undefined
116
- onRest?: MaybeArray<() => void> | undefined
117
- onCustom?: MaybeArray<
118
- ((reset: true) => void)
119
- | ((sort: string[]) => void)
120
- | ((modify: {
121
- key: string
122
- hidden: boolean
123
- }) => void)
124
- >
125
- | undefined
126
- onCollapse?: MaybeArray<(collapsed: boolean) => void> | undefined
127
- }
128
-
129
- export type DataFilterEmits<Data extends {}> = {
130
- (e: 'filter', model: Data): void
131
- (e: 'reset'): void
132
- (e: 'custom', param: true | string[] | { key: string, hidden?: boolean }): void
133
- (e: 'custom', sort: string[]): void
134
- (e: 'custom', modify: {
135
- key: string
136
- hidden?: boolean
137
- }): void
138
- (e: 'collpase', collapsed: boolean): void
139
- }
140
-
141
- export type DataFilterInst = {
142
- collapse(this: void, collapsed: boolean): void
143
- }
144
-
145
- export declare function DataFilter<Data extends {}>(
146
- props: DataFilterProps<Data> & PublicProps,
147
- ctx?: Pick<GenericCtx<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>, 'attrs' | 'emit' | 'slots'>,
148
- expose?: (exposed?: GenericExposed<DataFilterInst>) => void,
149
- setup?: GenericCtx<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>,
150
- ): GenericReturn<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>
151
-
152
- export type DataTableProps<Data extends {}, KeyField extends keyof Data>
153
- = Omit<NDataTableProps, 'columns' | 'rowKey' | 'data' | 'checkedRowKeys' | 'defaultCheckedRowKeys' | 'onUpdate:checkedRowKeys' | 'onUpdateCheckedRowKeys'> & {
154
- columns?: TableColumn<Data>[] | undefined
155
- data?: Data[] | undefined
156
- keyField?: KeyField | undefined
157
- selectedKeys?: Data[KeyField][] | undefined
158
- highlight?: boolean | Data[KeyField] | undefined
159
- sorter?: SortParams<Data> | undefined
160
- onSort?: MaybeArray<(param: SortParams<Data>) => void> | undefined
161
- onSelect?: MaybeArray<(param: NonNullable<Data[KeyField]>[]) => void> | undefined
162
- }
163
-
164
- export type DataTableEmits<Data extends {}, KeyField extends keyof Data> = {
165
- (e: 'sort', param: SortParams<Data>): void
166
- (e: 'select', param: Data[KeyField][]): void
167
- (e: 'highlight', rowKey: Data[KeyField]): void
168
- (e: 'custom', params: { key: string, width: number }): void
169
- }
170
-
171
- export type DataTableInst<Data extends {}, KeyField extends keyof Data> = NDataTableInst & {
172
- scrollToView(rowKey: Data[KeyField]): void
173
- }
174
-
175
- export declare function DataTable<Data extends _DataWithPresetKeyField>(
176
- props: DataTableProps<Data, PresetKeyField> & PublicProps,
177
- ctx?: Pick<GenericCtx<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>, 'attrs' | 'emit' | 'slots'>,
178
- expose?: (exposed?: GenericExposed<DataTableInst<Data, PresetKeyField>>) => void,
179
- setup?: GenericCtx<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>,
180
- ): GenericReturn<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>
181
-
182
- export declare function DataTable<Data extends {}, KeyField extends keyof Data>(
183
- props: DataTableProps<Data, KeyField> & PublicProps,
184
- ctx?: Pick<GenericCtx<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>, 'attrs' | 'emit' | 'slots'>,
185
- expose?: (exposed?: GenericExposed<DataTableInst<Data, KeyField>>) => void,
186
- setup?: GenericCtx<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>,
187
- ): GenericReturn<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>
188
-
189
- export declare function useDataTableDrag<T>(
190
- tableRef: TemplateRef<HTMLElement>,
191
- { data, onSort, ...options }: {
192
- data: MaybeRef<T[]>
193
- onSort: (info: { from: number, to: number }) => void
194
- } & Omit<Sortable.Options, 'onSort'>,
195
- ): void
196
-
197
- export type DataPaginationProps = (PageParams | { page: PageParams }) & {
198
- simple?: boolean | undefined
199
- total: number
200
- pageSizes?: number[] | undefined
201
- onChange?: MaybeArray<(value: PageParams) => void> | undefined
202
- }
203
-
204
- export type DataPaginationEmits = {
205
- (e: 'change', value: PageParams): void
206
- }
207
-
208
- export declare function DataPagination(
209
- props: DataPaginationProps & PublicProps,
210
- ctx?: Pick<GenericCtx<DataPaginationProps, DataPaginationEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
211
- expose?: (exposed?: GenericExposed<{}>) => void,
212
- setup?: GenericCtx<DataPaginationProps, DataPaginationEmits, {}, {}>,
213
- ): GenericReturn<DataPaginationProps, DataPaginationEmits, {}, {}>
214
-
215
- export type DataSelectionProps = {
216
- 'count': number
217
- 'modelValue': 'all' | 'selection'
218
- 'onClear'?: MaybeArray<() => void> | undefined
219
- 'onUpdate:modelValue'?: MaybeArray<(value: DataSelectionProps['modelValue']) => void> | undefined
220
- }
221
-
222
- export type DataSelectionEmits = {
223
- (e: 'clear'): void
224
- (e: 'update:modelValue', v: DataSelectionProps['modelValue']): void
225
- }
226
-
227
- export declare function DataSelection(
228
- props: DataSelectionProps & PublicProps,
229
- ctx?: Pick<GenericCtx<DataSelectionProps, DataSelectionEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
230
- expose?: (exposed?: GenericExposed<{}>) => void,
231
- setup?: GenericCtx<DataSelectionProps, DataSelectionEmits, {}, {}>,
232
- ): GenericReturn<DataSelectionProps, DataSelectionEmits, {}, {}>
233
-
234
- export type DataCustomProps<Data extends {}> = {
235
- data: Data[]
236
- hiddenField?: keyof Data | undefined
237
- fixedField?: keyof Data | undefined
238
- labelField?: keyof Data | undefined
239
- keyField?: keyof Data | undefined
240
- showFixed?: boolean | undefined
241
- disabledField?: keyof Data | undefined
242
- visiblityField?: keyof Data | undefined
243
- labelTitle?: VNodeChild | undefined
244
- size?: number | undefined
245
- type?: 'primary' | 'default' | undefined
246
- onCustom?: MaybeArray<
247
- ((reset: true) => void)
248
- | ((sort: string[]) => void)
249
- | ((modify: {
250
- key: string
251
- hidden?: boolean | undefined
252
- fixed?: 'left' | 'right' | false | undefined
253
- }) => void)>
254
- | undefined
255
- }
256
-
257
- export type DataCustomEmits = {
258
- (e: 'custom', reset: true): void
259
- (e: 'custom', sort: string[]): void
260
- (e: 'custom', modify: {
261
- key: string
262
- hidden?: boolean | undefined
263
- fixed?: 'left' | 'right' | false | undefined
264
- }): void
265
- }
266
-
267
- export declare function DataCustom<Data extends {}>(
268
- props: DataCustomProps<Data> & PublicProps,
269
- ctx?: Pick<GenericCtx<DataCustomProps<Data>, DataCustomEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
270
- expose?: (exposed?: GenericExposed<{}>) => void,
271
- setup?: GenericCtx<DataCustomProps<Data>, DataCustomEmits, {}, {}>,
272
- ): GenericReturn<DataCustomProps<Data>, DataCustomEmits, {}, {}>
273
-
274
- export type DataActionsProps = {
275
- options?: TableActionRenderParam[] | undefined
276
- }
277
-
278
- export type DataActionsEmits = {}
279
-
280
- export declare function DataActions(
281
- props: DataActionsProps & PublicProps,
282
- ctx?: Pick<GenericCtx<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>, 'attrs' | 'emit' | 'slots'>,
283
- expose?: (exposed?: GenericExposed<{}>) => void,
284
- setup?: GenericCtx<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>,
285
- ): GenericReturn<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>
286
-
287
- export type DataLocaleInputProps = {
288
- 'label'?: VNodeChild | (() => VNodeChild) | undefined
289
- 'modelValue'?: Record<string, string | undefined> | null | undefined
290
- 'supports'?: { label: string, value: string }[] | undefined
291
- 'defaultLang'?: string | undefined
292
- 'showLang'?: string | undefined
293
- 'disabled'?: boolean | undefined
294
- 'defaultRows'?: number | undefined
295
- 'onUpdate:modelValue'?: MaybeArray<(modelValue: Record<string, string | undefined> | null) => void> | undefined
296
- 'onUpdateModelValue'?: MaybeArray<(modelValue: Record<string, string | undefined> | null) => void> | undefined
297
- }
298
-
299
- export type DataLocaleInputEmits = {
300
- (e: 'update:modelValue', modelValue: Record<string, string | undefined> | null | undefined): void
301
- (e: 'updateModelValue', modelValue: Record<string, string | undefined> | null | undefined): void
302
- }
303
-
304
- export declare function DataLocaleInput(
305
- props: DataLocaleInputProps & PublicProps,
306
- ctx?: Pick<GenericCtx<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
307
- expose?: (exposed?: GenericExposed<{}>) => void,
308
- setup?: GenericCtx<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>,
309
- ): GenericReturn<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>
310
-
311
- export declare function useLocaleEdit(
312
- title: VNodeChild | (() => VNodeChild),
313
- onSubmit: (data: Record<string, string | undefined>) => void,
314
- defaultRows?: MaybeRef<number | undefined>,
315
- ): {
316
- open(this: void, data: MaybePromise<Record<string, string | undefined>>, readonly?: boolean): PromiseLike<Record<string, string | undefined>>
317
- setSupports(this: void, supports: { label: string, value: string, required?: boolean }[]): void
318
- }
319
-
320
- export interface CheckboxesProps extends Omit<CheckboxGroupProps, 'value' | 'onUpdate:value' | 'defaultValue'> {
321
- 'options'?: DictItem[] | Record<string, unknown>[] | undefined
322
- 'vertical'?: boolean | undefined
323
- 'default'?: boolean | string | DictItem | undefined
324
- 'labelPadding'?: CSSProperties['padding']
325
- 'labelField'?: string | undefined
326
- 'valueField'?: string | undefined
327
- 'disabledField'?: string | undefined
328
- 'modelValue'?: string[] | number[] | null | undefined
329
- 'onUpdate:modelValue'?: MaybeArray<(modelValue: string[] | number[] | null) => void> | undefined
330
- 'onUpdateModelValue'?: MaybeArray<(modelValue: string[] | number[] | null) => void> | undefined
331
- }
332
-
333
- export interface CheckboxesEmits {
334
- (e: 'update:modelValue', modelValue: string[] | number[] | null): void
335
- (e: 'updateModelValue', modelValue: string[] | number[] | null): void
336
- }
337
-
338
- export declare function NCheckboxes(
339
- props: CheckboxesProps & PublicProps,
340
- ctx?: Pick<GenericCtx<CheckboxesProps, CheckboxesEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
341
- expose?: (exposed?: GenericExposed<{}>) => void,
342
- setup?: GenericCtx<CheckboxesProps, CheckboxesEmits, {}, {}>,
343
- ): GenericReturn<CheckboxesProps, CheckboxesEmits, {}, {}>
344
-
345
- export interface RadiosProps extends Omit<RadioGroupProps, 'value' | 'onUpdate:value' | 'defaultValue'> {
346
- 'options'?: DictItem[] | Record<string, unknown>[] | undefined
347
- 'type'?: 'radio' | 'button' | 'button-primary' | undefined
348
- 'vertical'?: boolean | undefined
349
- 'default'?: boolean | string | DictItem | undefined
350
- 'padding'?: CSSProperties['padding']
351
- 'labelField'?: string | undefined
352
- 'valueField'?: string | undefined
353
- 'disabledField'?: string | undefined
354
- 'modelValue'?: string | number | boolean | null | undefined
355
- 'onUpdate:modelValue'?: MaybeArray<(modelValue: string | number | boolean | null) => void> | undefined
356
- 'onUpdateModelValue'?: MaybeArray<(modelValue: string | number | boolean | null) => void> | undefined
357
- }
358
-
359
- export interface RadiosEmits {
360
- (e: 'update:modelValue', modelValue: string | number | boolean | null): void
361
- (e: 'updateModelValue', modelValue: string | number | boolean | null): void
362
- }
363
-
364
- export declare function NRadios(
365
- props: RadiosProps & PublicProps,
366
- ctx?: Pick<GenericCtx<RadiosProps, RadiosEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
367
- expose?: (exposed?: GenericExposed<{}>) => void,
368
- setup?: GenericCtx<RadiosProps, RadiosEmits, {}, {}>,
369
- ): GenericReturn<RadiosProps, RadiosEmits, {}, {}>
370
-
371
- export interface UserGroupOption {
372
- code: string
373
- name: string
374
- }
375
- export interface DeptOption {
376
- id?: string | undefined
377
- code: string
378
- name: string
379
- children?: DeptOption[]
380
- }
381
-
382
- interface UserDeptProps<Multiple extends boolean> {
383
- 'type'?: 'user' | 'dept' | undefined
384
- 'selectType'?: 'dropdown' | 'dialog' | 'transfer' | undefined
385
- 'placeholder'?: string | undefined
386
- 'menuProps'?: HTMLAttributes | undefined
387
- 'multiple'?: Multiple | undefined
388
- 'defaultExpandAll'?: boolean | undefined
389
- 'filterable'?: boolean | undefined
390
- 'disabled'?: boolean | undefined
391
- 'size'?: TransferProps['size'] | undefined
392
- 'valueField'?: 'id' | 'username' | 'code' | undefined
393
- 'users'?: { id?: string | undefined, username: string, nickname: string }[] | undefined
394
- 'groups'?: UserGroupOption[] | undefined
395
- 'depts'?: DeptOption[] | undefined
396
- 'getUsersByGroup'?: ((code: string) => Promise<{ username: string, nickname: string }[]>) | undefined
397
- 'getUsersByDept'?: ((code: string) => Promise<{ username: string, nickname: string }[]>) | undefined
398
- 'modelValue'?: Multiple extends true ? (string[] | null | undefined) : (string | null | undefined)
399
- 'onUpdate:modelValue'?: MaybeArray<(value: Multiple extends true ? string[] : string) => void> | undefined
400
- 'onUpdateModelValue'?: MaybeArray<(value: Multiple extends true ? string[] : string) => void> | undefined
401
- }
402
-
403
- interface UserDeptEmits<Multiple extends boolean> {
404
- (e: 'update:modelValue', value: Multiple extends true ? string[] : string): void
405
- (e: 'updateModelValue', value: Multiple extends true ? string[] : string): void
406
- }
407
-
408
- export declare const DtUserDept: <Multiple extends boolean>(
409
- props: UserDeptProps<Multiple> & PublicProps,
410
- ctx?: Pick<GenericCtx<UserDeptProps<Multiple>, UserDeptEmits<Multiple>>, 'attrs' | 'emit' | 'slots'>,
411
- expose?: (exposed?: GenericExposed<{}>) => void,
412
- setup?: GenericCtx<UserDeptProps<Multiple>, UserDeptEmits<Multiple>, {}, {}>,
413
- ) => GenericReturn<UserDeptProps<Multiple>, UserDeptEmits<Multiple>, {}, {}>
414
-
415
- interface UserRenderProps {
416
- value?: string | string[] | null | undefined
417
- multiple?: boolean | undefined
418
- max?: number | undefined
419
- size?: number | undefined
420
- placement?: PopoverProps['placement']
421
- getUsersByUsername?: ((usernames: string[]) => Promise<{ username: string, nickname: string }[]>) | undefined
422
- }
423
-
424
- interface UserRenderEmits {
425
- }
426
-
427
- export declare const DtUserRender: (
428
- props: UserRenderProps & PublicProps,
429
- ctx?: Pick<GenericCtx<UserRenderProps, UserRenderEmits>, 'attrs' | 'emit' | 'slots'>,
430
- expose?: (exposed?: GenericExposed<{}>) => void,
431
- setup?: GenericCtx<UserRenderProps, UserRenderEmits, {}, {}>,
432
- ) => GenericReturn<UserRenderProps, UserRenderEmits, {}, {}>
433
-
434
- interface DeptRenderProps {
435
- value?: string | string[] | null | undefined
436
- multiple?: boolean | undefined
437
- getDeptsByCode?: (codes: string[]) => Promise<DeptOption[]>
438
- }
439
-
440
- interface DeptRenderEmits {
441
- }
442
-
443
- export declare const DtDeptRender: (
444
- props: DeptRenderProps & PublicProps,
445
- ctx?: Pick<GenericCtx<DeptRenderProps, DeptRenderEmits>, 'attrs' | 'emit' | 'slots'>,
446
- expose?: (exposed?: GenericExposed<{}>) => void,
447
- setup?: GenericCtx<DeptRenderProps, DeptRenderEmits, {}, {}>,
448
- ) => GenericReturn<DeptRenderProps, DeptRenderEmits, {}, {}>
1
+ import {
2
+ CheckboxGroupProps, DataTableInst as NDataTableInst, DataTableProps as NDataTableProps,
3
+ FormItemGiProps as NFormItemGiProps, FormProps as NFormProps, GridItemProps as NGridItemProps, GridProps as NGridProps,
4
+ PopoverProps,
5
+ RadioGroupProps, TransferProps,
6
+ } from 'ithinkdt-ui'
7
+ import Sortable from 'sortablejs'
8
+ import { AllowedComponentProps, MaybeRef, MaybeRefOrGetter, VNodeChild } from 'vue'
9
+ import type { CSSProperties, HTMLAttributes, TemplateRef } from 'vue'
10
+
11
+ import { GenericCtx, GenericExposed, GenericReturn, MaybeArray, MaybePromise, PublicProps } from '@otwb/common'
12
+ import { DictItem } from '@otwb/common/dict'
13
+ import { FormItem, PageParams, PresetKeyField, SortParams, TableActionRenderParam, TableColumn, ValidationResults, _DataWithPresetKeyField } from '@otwb/page'
14
+
15
+ declare module '@otwb/page' {
16
+
17
+ interface FormRenderExtraOptions {
18
+ showColon?: MaybeRef<boolean | undefined>
19
+ labelWidth?: MaybeRef<string | number | undefined>
20
+ labelAlign?: MaybeRef<'left' | 'right' | 'center' | undefined>
21
+ labelPlacement?: MaybeRef<'left' | 'top' | undefined>
22
+ showRequireMark?: MaybeRef<boolean | undefined>
23
+ requireMarkPlacement?: MaybeRef<'left' | 'right' | 'right-hanging' | undefined>
24
+ showFeedback?: MaybeRef<boolean | undefined>
25
+ }
26
+
27
+ type FormItemOptionKeys = 'size' | 'showLabel' | 'labelWidth' | 'labelStyle' | 'labelAlign' | 'labelPlacement' | 'labelProps'
28
+ | 'showRequireMark' | 'requireMarkPlacement' | 'showFeedback' | 'feedbackClass' | 'feedbackStyle' | 'span' | 'offset'
29
+
30
+ type FormItemOptionExtra = {
31
+ [K in FormItemOptionKeys]?: MaybeRef<NFormItemGiProps[K]>
32
+ }
33
+
34
+ // eslint-disable-next-line ts/no-unused-vars
35
+ interface FormItemOptions<Model extends {}> extends FormItemOptionExtra {
36
+ showColon?: MaybeRef<boolean | undefined>
37
+ rowSpan?: MaybeRef<number | undefined>
38
+ tooltip?: MaybeRefOrGetter<VNodeChild | undefined>
39
+ tooltipPlacement?: MaybeRef<'bottom' | 'icon' | undefined>
40
+ showTooltipWhenReadonly?: MaybeRef<boolean | undefined>
41
+ }
42
+ // eslint-disable-next-line ts/no-unused-vars
43
+ interface FormItem<Model extends {}> extends Pick<NFormItemGiProps, FormItemOptionKeys> {
44
+ showColon?: boolean | undefined
45
+ rowSpan?: number | undefined
46
+ tooltip?: VNodeChild | (() => VNodeChild) | undefined
47
+ tooltipPlacement?: 'bottom' | 'icon' | undefined
48
+ showTooltipWhenReadonly?: boolean | undefined
49
+ }
50
+
51
+ interface FormItemRenderExtraParams {
52
+ size?: 'small' | 'medium' | 'large' | undefined
53
+ }
54
+
55
+ }
56
+
57
+ export type DataFormProps<Data extends {}> = Omit<NFormProps, 'model' | 'rules' | 'onSubmit' | 'validateMessages'> & {
58
+ items: FormItem<Data>[]
59
+ model: Data
60
+ readonly?: boolean | undefined
61
+ grid?: boolean | NGridProps | undefined
62
+ validation?: { [k in keyof Data]?: ValidationResults } | undefined
63
+ showColon?: boolean | undefined
64
+ loading?: boolean | undefined
65
+ showAction?: boolean | NGridItemProps & AllowedComponentProps | undefined
66
+ actionAlign?: 'start' | 'center' | 'end'
67
+ submitText?: VNodeChild | undefined
68
+ resetText?: VNodeChild | undefined
69
+ cancelText?: VNodeChild | undefined
70
+ showSubmitBtn?: boolean | undefined
71
+ showResetBtn?: boolean | undefined
72
+ showCancelBtn?: boolean | undefined
73
+ submitDisabled?: boolean | undefined
74
+ succeeded?: boolean | undefined
75
+ successText?: VNodeChild | undefined
76
+
77
+ tooltipPlacement?: 'bottom' | 'icon' | undefined
78
+ onSubmit?: MaybeArray<(model: Data) => void> | undefined
79
+ onRest?: MaybeArray<() => void> | undefined
80
+ }
81
+
82
+ export type DataFormEmits<Data extends {}> = {
83
+ (e: 'submit', model: Data): void
84
+ (e: 'reset'): void
85
+ }
86
+
87
+ export type DataFormSlots<_Data extends {}> = {
88
+ action?: (params: { cols: number, spans: number, overflow: boolean }) => VNodeChild
89
+ }
90
+
91
+ export type DataFormInst = {
92
+ }
93
+
94
+ export declare function DataForm<Data extends {}>(
95
+ props: DataFormProps<Data> & PublicProps,
96
+ ctx?: Pick<GenericCtx<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>, 'attrs' | 'emit' | 'slots'>,
97
+ expose?: (exposed?: GenericExposed<DataFormInst>) => void,
98
+ setup?: GenericCtx<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>,
99
+ ): GenericReturn<DataFormProps<Data>, DataFormEmits<Data>, DataFormSlots<Data>, DataFormInst>
100
+
101
+ export type DataFilterProps<Data extends {}> = Omit<NFormProps, 'model' | 'rules' | 'onSubmit' | 'validateMessages'> & {
102
+ items: FormItem<Data>[]
103
+ model: Data
104
+ loading?: boolean | undefined
105
+ filterOnReset?: boolean | undefined
106
+ filterText?: VNodeChild | undefined
107
+ resetText?: VNodeChild | undefined
108
+ grid?: boolean | Omit<NGridProps, 'collapsed' | 'collapsedRows'> | undefined
109
+ collapsible?: boolean | undefined
110
+ defaultCollapsed?: boolean | undefined
111
+ collapsedRows?: number | undefined
112
+ showColon?: boolean | undefined
113
+ tooltipPlacement?: 'bottom' | 'icon' | undefined
114
+ customizable?: boolean | undefined
115
+ onFilter?: MaybeArray<(model: Data) => void> | undefined
116
+ onRest?: MaybeArray<() => void> | undefined
117
+ onCustom?: MaybeArray<
118
+ ((reset: true) => void)
119
+ | ((sort: string[]) => void)
120
+ | ((modify: {
121
+ key: string
122
+ hidden: boolean
123
+ }) => void)
124
+ >
125
+ | undefined
126
+ onCollapse?: MaybeArray<(collapsed: boolean) => void> | undefined
127
+ }
128
+
129
+ export type DataFilterEmits<Data extends {}> = {
130
+ (e: 'filter', model: Data): void
131
+ (e: 'reset'): void
132
+ (e: 'custom', param: true | string[] | { key: string, hidden?: boolean }): void
133
+ (e: 'custom', sort: string[]): void
134
+ (e: 'custom', modify: {
135
+ key: string
136
+ hidden?: boolean
137
+ }): void
138
+ (e: 'collpase', collapsed: boolean): void
139
+ }
140
+
141
+ export type DataFilterInst = {
142
+ collapse(this: void, collapsed: boolean): void
143
+ }
144
+
145
+ export declare function DataFilter<Data extends {}>(
146
+ props: DataFilterProps<Data> & PublicProps,
147
+ ctx?: Pick<GenericCtx<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>, 'attrs' | 'emit' | 'slots'>,
148
+ expose?: (exposed?: GenericExposed<DataFilterInst>) => void,
149
+ setup?: GenericCtx<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>,
150
+ ): GenericReturn<DataFilterProps<Data>, DataFilterEmits<Data>, {}, DataFilterInst>
151
+
152
+ export type DataTableProps<Data extends {}, KeyField extends keyof Data>
153
+ = Omit<NDataTableProps, 'columns' | 'rowKey' | 'data' | 'checkedRowKeys' | 'defaultCheckedRowKeys' | 'onUpdate:checkedRowKeys' | 'onUpdateCheckedRowKeys'> & {
154
+ columns?: TableColumn<Data>[] | undefined
155
+ data?: Data[] | undefined
156
+ keyField?: KeyField | undefined
157
+ selectedKeys?: Data[KeyField][] | undefined
158
+ highlight?: boolean | Data[KeyField] | undefined
159
+ sorter?: SortParams<Data> | undefined
160
+ onSort?: MaybeArray<(param: SortParams<Data>) => void> | undefined
161
+ onSelect?: MaybeArray<(param: NonNullable<Data[KeyField]>[]) => void> | undefined
162
+ }
163
+
164
+ export type DataTableEmits<Data extends {}, KeyField extends keyof Data> = {
165
+ (e: 'sort', param: SortParams<Data>): void
166
+ (e: 'select', param: Data[KeyField][]): void
167
+ (e: 'highlight', rowKey: Data[KeyField]): void
168
+ (e: 'custom', params: { key: string, width: number }): void
169
+ }
170
+
171
+ export type DataTableInst<Data extends {}, KeyField extends keyof Data> = NDataTableInst & {
172
+ scrollToView(rowKey: Data[KeyField]): void
173
+ }
174
+
175
+ export declare function DataTable<Data extends _DataWithPresetKeyField>(
176
+ props: DataTableProps<Data, PresetKeyField> & PublicProps,
177
+ ctx?: Pick<GenericCtx<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>, 'attrs' | 'emit' | 'slots'>,
178
+ expose?: (exposed?: GenericExposed<DataTableInst<Data, PresetKeyField>>) => void,
179
+ setup?: GenericCtx<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>,
180
+ ): GenericReturn<DataTableProps<Data, PresetKeyField>, DataTableEmits<Data, PresetKeyField>, {}, DataTableInst<Data, PresetKeyField>>
181
+
182
+ export declare function DataTable<Data extends {}, KeyField extends keyof Data>(
183
+ props: DataTableProps<Data, KeyField> & PublicProps,
184
+ ctx?: Pick<GenericCtx<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>, 'attrs' | 'emit' | 'slots'>,
185
+ expose?: (exposed?: GenericExposed<DataTableInst<Data, KeyField>>) => void,
186
+ setup?: GenericCtx<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>,
187
+ ): GenericReturn<DataTableProps<Data, KeyField>, DataTableEmits<Data, KeyField>, {}, DataTableInst<Data, KeyField>>
188
+
189
+ export declare function useDataTableDrag<T>(
190
+ tableRef: TemplateRef<HTMLElement>,
191
+ { data, onSort, ...options }: {
192
+ data: MaybeRef<T[]>
193
+ onSort: (info: { from: number, to: number }) => void
194
+ } & Omit<Sortable.Options, 'onSort'>,
195
+ ): void
196
+
197
+ export type DataPaginationProps = (PageParams | { page: PageParams }) & {
198
+ simple?: boolean | undefined
199
+ total: number
200
+ pageSizes?: number[] | undefined
201
+ onChange?: MaybeArray<(value: PageParams) => void> | undefined
202
+ }
203
+
204
+ export type DataPaginationEmits = {
205
+ (e: 'change', value: PageParams): void
206
+ }
207
+
208
+ export declare function DataPagination(
209
+ props: DataPaginationProps & PublicProps,
210
+ ctx?: Pick<GenericCtx<DataPaginationProps, DataPaginationEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
211
+ expose?: (exposed?: GenericExposed<{}>) => void,
212
+ setup?: GenericCtx<DataPaginationProps, DataPaginationEmits, {}, {}>,
213
+ ): GenericReturn<DataPaginationProps, DataPaginationEmits, {}, {}>
214
+
215
+ export type DataSelectionProps = {
216
+ 'count': number
217
+ 'modelValue': 'all' | 'selection'
218
+ 'onClear'?: MaybeArray<() => void> | undefined
219
+ 'onUpdate:modelValue'?: MaybeArray<(value: DataSelectionProps['modelValue']) => void> | undefined
220
+ }
221
+
222
+ export type DataSelectionEmits = {
223
+ (e: 'clear'): void
224
+ (e: 'update:modelValue', v: DataSelectionProps['modelValue']): void
225
+ }
226
+
227
+ export declare function DataSelection(
228
+ props: DataSelectionProps & PublicProps,
229
+ ctx?: Pick<GenericCtx<DataSelectionProps, DataSelectionEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
230
+ expose?: (exposed?: GenericExposed<{}>) => void,
231
+ setup?: GenericCtx<DataSelectionProps, DataSelectionEmits, {}, {}>,
232
+ ): GenericReturn<DataSelectionProps, DataSelectionEmits, {}, {}>
233
+
234
+ export type DataCustomProps<Data extends {}> = {
235
+ data: Data[]
236
+ hiddenField?: keyof Data | undefined
237
+ fixedField?: keyof Data | undefined
238
+ labelField?: keyof Data | undefined
239
+ keyField?: keyof Data | undefined
240
+ showFixed?: boolean | undefined
241
+ disabledField?: keyof Data | undefined
242
+ visiblityField?: keyof Data | undefined
243
+ labelTitle?: VNodeChild | undefined
244
+ size?: number | undefined
245
+ type?: 'primary' | 'default' | undefined
246
+ onCustom?: MaybeArray<
247
+ ((reset: true) => void)
248
+ | ((sort: string[]) => void)
249
+ | ((modify: {
250
+ key: string
251
+ hidden?: boolean | undefined
252
+ fixed?: 'left' | 'right' | false | undefined
253
+ }) => void)>
254
+ | undefined
255
+ }
256
+
257
+ export type DataCustomEmits = {
258
+ (e: 'custom', reset: true): void
259
+ (e: 'custom', sort: string[]): void
260
+ (e: 'custom', modify: {
261
+ key: string
262
+ hidden?: boolean | undefined
263
+ fixed?: 'left' | 'right' | false | undefined
264
+ }): void
265
+ }
266
+
267
+ export declare function DataCustom<Data extends {}>(
268
+ props: DataCustomProps<Data> & PublicProps,
269
+ ctx?: Pick<GenericCtx<DataCustomProps<Data>, DataCustomEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
270
+ expose?: (exposed?: GenericExposed<{}>) => void,
271
+ setup?: GenericCtx<DataCustomProps<Data>, DataCustomEmits, {}, {}>,
272
+ ): GenericReturn<DataCustomProps<Data>, DataCustomEmits, {}, {}>
273
+
274
+ export type DataActionsProps = {
275
+ options?: TableActionRenderParam[] | undefined
276
+ }
277
+
278
+ export type DataActionsEmits = {}
279
+
280
+ export declare function DataActions(
281
+ props: DataActionsProps & PublicProps,
282
+ ctx?: Pick<GenericCtx<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>, 'attrs' | 'emit' | 'slots'>,
283
+ expose?: (exposed?: GenericExposed<{}>) => void,
284
+ setup?: GenericCtx<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>,
285
+ ): GenericReturn<DataActionsProps, DataActionsEmits, { default?: () => VNodeChild }, {}>
286
+
287
+ export type DataLocaleInputProps = {
288
+ 'label'?: VNodeChild | (() => VNodeChild) | undefined
289
+ 'modelValue'?: Record<string, string | undefined> | null | undefined
290
+ 'supports'?: { label: string, value: string }[] | undefined
291
+ 'defaultLang'?: string | undefined
292
+ 'showLang'?: string | undefined
293
+ 'disabled'?: boolean | undefined
294
+ 'defaultRows'?: number | undefined
295
+ 'onUpdate:modelValue'?: MaybeArray<(modelValue: Record<string, string | undefined> | null) => void> | undefined
296
+ 'onUpdateModelValue'?: MaybeArray<(modelValue: Record<string, string | undefined> | null) => void> | undefined
297
+ }
298
+
299
+ export type DataLocaleInputEmits = {
300
+ (e: 'update:modelValue', modelValue: Record<string, string | undefined> | null | undefined): void
301
+ (e: 'updateModelValue', modelValue: Record<string, string | undefined> | null | undefined): void
302
+ }
303
+
304
+ export declare function DataLocaleInput(
305
+ props: DataLocaleInputProps & PublicProps,
306
+ ctx?: Pick<GenericCtx<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
307
+ expose?: (exposed?: GenericExposed<{}>) => void,
308
+ setup?: GenericCtx<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>,
309
+ ): GenericReturn<DataLocaleInputProps, DataLocaleInputEmits, {}, {}>
310
+
311
+ export declare function useLocaleEdit(
312
+ title: VNodeChild | (() => VNodeChild),
313
+ onSubmit: (data: Record<string, string | undefined>) => void,
314
+ defaultRows?: MaybeRef<number | undefined>,
315
+ ): {
316
+ open(this: void, data: MaybePromise<Record<string, string | undefined>>, readonly?: boolean): PromiseLike<Record<string, string | undefined>>
317
+ setSupports(this: void, supports: { label: string, value: string, required?: boolean }[]): void
318
+ }
319
+
320
+ export interface CheckboxesProps extends Omit<CheckboxGroupProps, 'value' | 'onUpdate:value' | 'defaultValue'> {
321
+ 'options'?: DictItem[] | Record<string, unknown>[] | undefined
322
+ 'vertical'?: boolean | undefined
323
+ 'default'?: boolean | string | DictItem | undefined
324
+ 'labelPadding'?: CSSProperties['padding']
325
+ 'labelField'?: string | undefined
326
+ 'valueField'?: string | undefined
327
+ 'disabledField'?: string | undefined
328
+ 'modelValue'?: string[] | number[] | null | undefined
329
+ 'onUpdate:modelValue'?: MaybeArray<(modelValue: string[] | number[] | null) => void> | undefined
330
+ 'onUpdateModelValue'?: MaybeArray<(modelValue: string[] | number[] | null) => void> | undefined
331
+ }
332
+
333
+ export interface CheckboxesEmits {
334
+ (e: 'update:modelValue', modelValue: string[] | number[] | null): void
335
+ (e: 'updateModelValue', modelValue: string[] | number[] | null): void
336
+ }
337
+
338
+ export declare function NCheckboxes(
339
+ props: CheckboxesProps & PublicProps,
340
+ ctx?: Pick<GenericCtx<CheckboxesProps, CheckboxesEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
341
+ expose?: (exposed?: GenericExposed<{}>) => void,
342
+ setup?: GenericCtx<CheckboxesProps, CheckboxesEmits, {}, {}>,
343
+ ): GenericReturn<CheckboxesProps, CheckboxesEmits, {}, {}>
344
+
345
+ export interface RadiosProps extends Omit<RadioGroupProps, 'value' | 'onUpdate:value' | 'defaultValue'> {
346
+ 'options'?: DictItem[] | Record<string, unknown>[] | undefined
347
+ 'type'?: 'radio' | 'button' | 'button-primary' | undefined
348
+ 'vertical'?: boolean | undefined
349
+ 'default'?: boolean | string | DictItem | undefined
350
+ 'padding'?: CSSProperties['padding']
351
+ 'labelField'?: string | undefined
352
+ 'valueField'?: string | undefined
353
+ 'disabledField'?: string | undefined
354
+ 'modelValue'?: string | number | boolean | null | undefined
355
+ 'onUpdate:modelValue'?: MaybeArray<(modelValue: string | number | boolean | null) => void> | undefined
356
+ 'onUpdateModelValue'?: MaybeArray<(modelValue: string | number | boolean | null) => void> | undefined
357
+ }
358
+
359
+ export interface RadiosEmits {
360
+ (e: 'update:modelValue', modelValue: string | number | boolean | null): void
361
+ (e: 'updateModelValue', modelValue: string | number | boolean | null): void
362
+ }
363
+
364
+ export declare function NRadios(
365
+ props: RadiosProps & PublicProps,
366
+ ctx?: Pick<GenericCtx<RadiosProps, RadiosEmits, {}, {}>, 'attrs' | 'emit' | 'slots'>,
367
+ expose?: (exposed?: GenericExposed<{}>) => void,
368
+ setup?: GenericCtx<RadiosProps, RadiosEmits, {}, {}>,
369
+ ): GenericReturn<RadiosProps, RadiosEmits, {}, {}>
370
+
371
+ export interface UserGroupOption {
372
+ code: string
373
+ name: string
374
+ }
375
+ export interface DeptOption {
376
+ id?: string | undefined
377
+ code: string
378
+ name: string
379
+ children?: DeptOption[]
380
+ }
381
+
382
+ interface UserDeptProps<Multiple extends boolean> {
383
+ 'type'?: 'user' | 'dept' | undefined
384
+ 'selectType'?: 'dropdown' | 'dialog' | 'transfer' | undefined
385
+ 'placeholder'?: string | undefined
386
+ 'menuProps'?: HTMLAttributes | undefined
387
+ 'multiple'?: Multiple | undefined
388
+ 'defaultExpandAll'?: boolean | undefined
389
+ 'filterable'?: boolean | undefined
390
+ 'disabled'?: boolean | undefined
391
+ 'size'?: TransferProps['size'] | undefined
392
+ 'valueField'?: 'id' | 'username' | 'code' | undefined
393
+ 'users'?: { id?: string | undefined, username: string, nickname: string }[] | undefined
394
+ 'groups'?: UserGroupOption[] | undefined
395
+ 'depts'?: DeptOption[] | undefined
396
+ 'getUsersByGroup'?: ((code: string) => Promise<{ username: string, nickname: string }[]>) | undefined
397
+ 'getUsersByDept'?: ((code: string) => Promise<{ username: string, nickname: string }[]>) | undefined
398
+ 'modelValue'?: Multiple extends true ? (string[] | null | undefined) : (string | null | undefined)
399
+ 'onUpdate:modelValue'?: MaybeArray<(value: Multiple extends true ? string[] : string) => void> | undefined
400
+ 'onUpdateModelValue'?: MaybeArray<(value: Multiple extends true ? string[] : string) => void> | undefined
401
+ }
402
+
403
+ interface UserDeptEmits<Multiple extends boolean> {
404
+ (e: 'update:modelValue', value: Multiple extends true ? string[] : string): void
405
+ (e: 'updateModelValue', value: Multiple extends true ? string[] : string): void
406
+ }
407
+
408
+ export declare const DtUserDept: <Multiple extends boolean>(
409
+ props: UserDeptProps<Multiple> & PublicProps,
410
+ ctx?: Pick<GenericCtx<UserDeptProps<Multiple>, UserDeptEmits<Multiple>>, 'attrs' | 'emit' | 'slots'>,
411
+ expose?: (exposed?: GenericExposed<{}>) => void,
412
+ setup?: GenericCtx<UserDeptProps<Multiple>, UserDeptEmits<Multiple>, {}, {}>,
413
+ ) => GenericReturn<UserDeptProps<Multiple>, UserDeptEmits<Multiple>, {}, {}>
414
+
415
+ interface UserRenderProps {
416
+ value?: string | string[] | null | undefined
417
+ multiple?: boolean | undefined
418
+ max?: number | undefined
419
+ size?: number | undefined
420
+ placement?: PopoverProps['placement']
421
+ getUsersByUsername?: ((usernames: string[]) => Promise<{ username: string, nickname: string }[]>) | undefined
422
+ }
423
+
424
+ interface UserRenderEmits {
425
+ }
426
+
427
+ export declare const DtUserRender: (
428
+ props: UserRenderProps & PublicProps,
429
+ ctx?: Pick<GenericCtx<UserRenderProps, UserRenderEmits>, 'attrs' | 'emit' | 'slots'>,
430
+ expose?: (exposed?: GenericExposed<{}>) => void,
431
+ setup?: GenericCtx<UserRenderProps, UserRenderEmits, {}, {}>,
432
+ ) => GenericReturn<UserRenderProps, UserRenderEmits, {}, {}>
433
+
434
+ interface DeptRenderProps {
435
+ value?: string | string[] | null | undefined
436
+ multiple?: boolean | undefined
437
+ getDeptsByCode?: (codes: string[]) => Promise<DeptOption[]>
438
+ }
439
+
440
+ interface DeptRenderEmits {
441
+ }
442
+
443
+ export declare const DtDeptRender: (
444
+ props: DeptRenderProps & PublicProps,
445
+ ctx?: Pick<GenericCtx<DeptRenderProps, DeptRenderEmits>, 'attrs' | 'emit' | 'slots'>,
446
+ expose?: (exposed?: GenericExposed<{}>) => void,
447
+ setup?: GenericCtx<DeptRenderProps, DeptRenderEmits, {}, {}>,
448
+ ) => GenericReturn<DeptRenderProps, DeptRenderEmits, {}, {}>