tdesign-vue
Version:
227 lines (226 loc) • 9.67 kB
TypeScript
import { CreateElement } from 'vue';
import { PropType } from '@vue/composition-api';
import { TdUploadProps, UploadFile } from '../type';
import { CommonDisplayFileProps } from '../interface';
import { UploadDragEvents } from '../hooks/useDrag';
export interface DraggerProps extends CommonDisplayFileProps {
trigger?: TdUploadProps['trigger'];
triggerUpload?: (e: MouseEvent) => void;
uploadFiles?: (toFiles?: UploadFile[]) => void;
cancelUpload?: (context: {
e: MouseEvent;
file: UploadFile;
}) => void;
dragEvents: UploadDragEvents;
}
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
drag: {
target: any;
dragActive: import("@vue/composition-api").Ref<boolean>;
handleDrop: (event: DragEvent) => void;
handleDragenter: (event: DragEvent) => void;
handleDragleave: (event: DragEvent) => void;
handleDragover: (event: DragEvent) => void;
};
dragActive: import("@vue/composition-api").Ref<boolean>;
draggerFileRef: import("@vue/composition-api").Ref<any>;
classes: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
sizeClassNames: {
small: string;
medium: string;
large: string;
default: string;
xs: string;
xl: string;
block: string;
};
uploadPrefix: string;
icons: import("tdesign-icons-vue").GlobalIconConfig;
}> & import("@vue/composition-api").Data, {
renderImage(): JSX.Element;
renderUploading(): JSX.Element;
renderMainPreview(): JSX.Element;
renderDefaultDragElement(): JSX.Element;
getContent(): JSX.Element;
}, {}, {
trigger: PropType<(h: CreateElement, props: import("../type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue>;
triggerUpload: PropType<(e: MouseEvent) => void>;
uploadFiles: PropType<(toFiles?: UploadFile[]) => void>;
cancelUpload: PropType<(context: {
e: MouseEvent;
file: UploadFile;
}) => void>;
dragEvents: PropType<UploadDragEvents>;
accept: StringConstructor;
files: import("vue").PropType<UploadFile[]>;
toUploadFiles: import("vue").PropType<UploadFile[]>;
displayFiles: import("vue").PropType<UploadFile[]>;
theme: import("vue").PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
abridgeName: import("vue").PropType<number[]>;
placeholder: StringConstructor;
classPrefix: StringConstructor;
tips: (FunctionConstructor | StringConstructor)[];
status: import("vue").PropType<"error" | "default" | "success" | "warning">;
locale: import("vue").PropType<import("../..").UploadConfig>;
sizeOverLimitMessage: StringConstructor;
autoUpload: BooleanConstructor;
disabled: BooleanConstructor;
uploading: BooleanConstructor;
tipsClasses: import("vue").PropType<string>;
errorClasses: import("vue").PropType<string[]>;
placeholderClass: import("vue").PropType<string>;
showUploadProgress: BooleanConstructor;
default: import("vue").PropType<(h: CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
fileListDisplay: import("vue").PropType<(h: CreateElement, props: {
files: UploadFile[];
dragEvents?: import("../..").UploadDisplayDragEvents;
}) => import("vue/types/vnode").ScopedSlotReturnValue>;
onRemove: import("vue").PropType<(p: import("../type").UploadRemoveContext) => void>;
imageViewerProps: import("vue").PropType<import("../../image-viewer").TdImageViewerProps>;
}, import("@vue/composition-api").ExtractPropTypes<{
trigger: PropType<(h: CreateElement, props: import("../type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue>;
triggerUpload: PropType<(e: MouseEvent) => void>;
uploadFiles: PropType<(toFiles?: UploadFile[]) => void>;
cancelUpload: PropType<(context: {
e: MouseEvent;
file: UploadFile;
}) => void>;
dragEvents: PropType<UploadDragEvents>;
accept: StringConstructor;
files: import("vue").PropType<UploadFile[]>;
toUploadFiles: import("vue").PropType<UploadFile[]>;
displayFiles: import("vue").PropType<UploadFile[]>;
theme: import("vue").PropType<"file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow">;
abridgeName: import("vue").PropType<number[]>;
placeholder: StringConstructor;
classPrefix: StringConstructor;
tips: (FunctionConstructor | StringConstructor)[];
status: import("vue").PropType<"error" | "default" | "success" | "warning">;
locale: import("vue").PropType<import("../..").UploadConfig>;
sizeOverLimitMessage: StringConstructor;
autoUpload: BooleanConstructor;
disabled: BooleanConstructor;
uploading: BooleanConstructor;
tipsClasses: import("vue").PropType<string>;
errorClasses: import("vue").PropType<string[]>;
placeholderClass: import("vue").PropType<string>;
showUploadProgress: BooleanConstructor;
default: import("vue").PropType<(h: CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
fileListDisplay: import("vue").PropType<(h: CreateElement, props: {
files: UploadFile[];
dragEvents?: import("../..").UploadDisplayDragEvents;
}) => import("vue/types/vnode").ScopedSlotReturnValue>;
onRemove: import("vue").PropType<(p: import("../type").UploadRemoveContext) => void>;
imageViewerProps: import("vue").PropType<import("../../image-viewer").TdImageViewerProps>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
disabled: boolean;
autoUpload: boolean;
uploading: boolean;
showUploadProgress: boolean;
} & {
default?: (h: CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
status?: "error" | "default" | "success" | "warning";
classPrefix?: string;
theme?: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
tips?: string;
trigger?: (h: CreateElement, props: import("../type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue;
errorClasses?: string[];
placeholder?: string;
onRemove?: (p: import("../type").UploadRemoveContext) => void;
locale?: unknown;
files?: UploadFile[];
abridgeName?: number[];
fileListDisplay?: (h: CreateElement, props: {
files: UploadFile[];
dragEvents?: import("../..").UploadDisplayDragEvents;
}) => import("vue/types/vnode").ScopedSlotReturnValue;
imageViewerProps?: unknown;
toUploadFiles?: UploadFile[];
displayFiles?: UploadFile[];
tipsClasses?: string;
placeholderClass?: string;
accept?: string;
sizeOverLimitMessage?: string;
triggerUpload?: (e: MouseEvent) => void;
uploadFiles?: (toFiles?: UploadFile[]) => void;
cancelUpload?: (context: {
e: MouseEvent;
file: UploadFile;
}) => void;
dragEvents?: unknown;
}, import("@vue/composition-api").ShallowUnwrapRef<{
drag: {
target: any;
dragActive: import("@vue/composition-api").Ref<boolean>;
handleDrop: (event: DragEvent) => void;
handleDragenter: (event: DragEvent) => void;
handleDragleave: (event: DragEvent) => void;
handleDragover: (event: DragEvent) => void;
};
dragActive: import("@vue/composition-api").Ref<boolean>;
draggerFileRef: import("@vue/composition-api").Ref<any>;
classes: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
sizeClassNames: {
small: string;
medium: string;
large: string;
default: string;
xs: string;
xl: string;
block: string;
};
uploadPrefix: string;
icons: import("tdesign-icons-vue").GlobalIconConfig;
}>, import("@vue/composition-api").Data, {}, {
renderImage(): JSX.Element;
renderUploading(): JSX.Element;
renderMainPreview(): JSX.Element;
renderDefaultDragElement(): JSX.Element;
getContent(): JSX.Element;
}, {}, {}, {}, {
disabled: boolean;
autoUpload: boolean;
uploading: boolean;
showUploadProgress: boolean;
} & {
default?: (h: CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
status?: "error" | "default" | "success" | "warning";
classPrefix?: string;
theme?: "file" | "custom" | "image" | "file-input" | "file-flow" | "image-flow";
tips?: string;
trigger?: (h: CreateElement, props: import("../type").TriggerContext) => import("vue/types/vnode").ScopedSlotReturnValue;
errorClasses?: string[];
placeholder?: string;
onRemove?: (p: import("../type").UploadRemoveContext) => void;
locale?: unknown;
files?: UploadFile[];
abridgeName?: number[];
fileListDisplay?: (h: CreateElement, props: {
files: UploadFile[];
dragEvents?: import("../..").UploadDisplayDragEvents;
}) => import("vue/types/vnode").ScopedSlotReturnValue;
imageViewerProps?: unknown;
toUploadFiles?: UploadFile[];
displayFiles?: UploadFile[];
tipsClasses?: string;
placeholderClass?: string;
accept?: string;
sizeOverLimitMessage?: string;
triggerUpload?: (e: MouseEvent) => void;
uploadFiles?: (toFiles?: UploadFile[]) => void;
cancelUpload?: (context: {
e: MouseEvent;
file: UploadFile;
}) => void;
dragEvents?: unknown;
}, {
disabled: boolean;
autoUpload: boolean;
uploading: boolean;
showUploadProgress: boolean;
}, true>);
export default _default;