UNPKG

1.69 kBTypeScriptView Raw
1import { CreateElement, VNode } from 'vue'
2import { ElementUIComponent } from './component'
3
4export type TransferPanelPosition = 'left' | 'right'
5
6export interface TransferData {
7 key: any,
8 label: string,
9 disabled: boolean
10}
11
12export interface TransferFormat {
13 noChecked: string,
14 hasChecked: string,
15}
16
17export interface TransferProps {
18 key: string,
19 label: string,
20 disabled: string
21}
22
23export interface TransferRenderContent {
24 /**
25 * Render function for a specific option
26 *
27 * @param h The render function
28 * @param option The option data object
29 */
30 (h: CreateElement, option: TransferData): VNode
31}
32
33/** Transfer Component */
34export declare class ElTransfer extends ElementUIComponent {
35 /** Data source */
36 data: TransferData[]
37
38 /** Whether Transfer is filterable */
39 filterable: boolean
40
41 /** Placeholder for the filter input */
42 filterPlaceholder: string
43
44 /** Custom filter method */
45 filterMethod: (query: string, item: TransferData) => boolean
46
47 /** Order strategy for elements in the target list */
48 targetOrder: string
49
50 /** Custom list titles */
51 titles: string[]
52
53 /** Custom button texts */
54 buttonTexts: string[]
55
56 /** Custom render function for data items */
57 renderContent: TransferRenderContent
58
59 /** Texts for checking status in list header */
60 format: TransferFormat
61
62 /** Prop aliases for data source */
63 props: TransferProps
64
65 /** Key array of initially checked data items of the left list */
66 leftDefaultChecked: any[]
67
68 /** Key array of initially checked data items of the right list */
69 rightDefaultChecked: any[]
70
71 /** Clear the query text in specified panel */
72 clearQuery (which: TransferPanelPosition): void
73}