@restnfeel/agentc-starter-kit
Version:
한국어 기업용 CMS 모듈 - Task Master AI와 함께 빠르게 웹사이트를 구현할 수 있는 재사용 가능한 컴포넌트 시스템
41 lines • 1.44 kB
TypeScript
interface MediaFile {
id: string;
fileName: string;
originalName: string;
mimeType: string;
size: number;
url: string;
cdnUrl?: string;
thumbnailUrl?: string;
createdAt: string;
tags: string[];
description?: string;
dimensions?: {
width: number;
height: number;
};
}
interface UseEditorMediaDropProps {
onMediaInsert: (html: string, media: MediaFile) => void;
onUploadStart?: () => void;
onUploadProgress?: (progress: number) => void;
onUploadComplete?: (media: MediaFile) => void;
onUploadError?: (error: string) => void;
acceptedTypes?: string[];
maxFileSize?: number;
}
export declare function useEditorMediaDrop({ onMediaInsert, onUploadStart, onUploadProgress, onUploadComplete, onUploadError, acceptedTypes, maxFileSize, }: UseEditorMediaDropProps): {
dragHandlers: {
onDragEnter: (e: React.DragEvent) => void;
onDragOver: (e: React.DragEvent) => void;
onDragLeave: (e: React.DragEvent) => void;
onDrop: (e: React.DragEvent) => Promise<void>;
};
uploadFile: (file: File) => Promise<MediaFile | null>;
insertMedia: (media: MediaFile | MediaFile[]) => void;
replaceMedia: (oldMediaId: string, newMedia: MediaFile) => void;
generateMediaHtml: (media: MediaFile) => string;
validateFile: (file: File) => string | null;
};
export {};
//# sourceMappingURL=useEditorMediaDrop.d.ts.map