import { TClassProperties } from '../../typedefs'; import { FabricImage as FbricImage } from '../Image'; import type { FabricObjectProps, SerializedObjectProps } from '../Object/types'; import { TOptions } from '../../typedefs'; export type WBFileSource = string | HTMLImageElement | HTMLVideoElement | HTMLCanvasElement; interface UniqueWBFileProps { srcFromAttribute: boolean; minimumScaleTrigger: number; cropX: number; cropY: number; imageSmoothing: boolean; crossOrigin: string | null; } export declare const WBFileDefaultValues: Partial>; export interface SerializedWBFileProps extends SerializedObjectProps { src: string; crossOrigin: string | null; filters: any[]; resizeFilter?: any; cropX: number; cropY: number; } export interface WBFileProps extends FabricObjectProps, UniqueWBFileProps { } export declare class X_File = Partial> extends FbricImage { minWidth: number; id: string; maxHeight: number; objType: string; locked: boolean; whiteboardId: string; userId: string; timestamp: Date; verticalAlign: string; zIndex: number; lines: object[]; url: string; relationship: object[]; name: string; isUploading: boolean; extendPropeties: string[]; dynamicMinWidth: number; /** * Use this boolean property in order to split strings that have no white space concept. * this is a cheap way to help with chinese/japanese * @type Boolean * @since 2.6.0 */ splitByGrapheme: boolean; static ownDefaults: Record; static getDefaults(): { controls: { tl: import("../../..").Control; br: import("../../..").Control; }; }; constructor(element: WBFileSource, options: Props); getWidgetMenuList(): string[]; getWidgetMenuLength(): 60 | 50; getContextMenuList(): string[]; InitializeEvent: () => void; drawObject(ctx: CanvasRenderingContext2D): void; getFileType(name?: string): string; isFileVideo(name: string): boolean; renderTitle(ctx: any, title: string): void; changeFileImgUrl(targetSrc: string): void; wrapText(context: any, text: any, x: number, y: number, maxWidth: number, lineHeight: number): void; getFileIconURL(name: string): string; fromURL>(fileOptions: any): Promise; } export {}; //# sourceMappingURL=X_File.d.ts.map