@apoorvdwi/excalidraw-collab
Version:
Excalidraw as a React component
27 lines (26 loc) • 1.37 kB
TypeScript
import { ExcalidrawElement, FileId } from "../../element/types";
import Portal from "../collab/Portal";
import { AppState, BinaryFileData } from "../../types";
import Video from "twilio-video";
import { SyncableExcalidrawElement } from ".";
export declare const loadFirebaseStorage: (firebaseConfig: any) => Promise<typeof import("firebase/app").default>;
export declare const isSavedToFirebase: (portal: Portal, elements: readonly ExcalidrawElement[]) => boolean;
export declare const saveFilesToFirebase: ({ prefix, files, firebaseConfig, }: {
prefix: string;
files: {
id: FileId;
buffer: Uint8Array;
}[];
firebaseConfig: any;
}) => Promise<{
savedFiles: Map<FileId, true>;
erroredFiles: Map<FileId, true>;
}>;
export declare const saveToFirebase: (portal: Portal, elements: readonly SyncableExcalidrawElement[], appState: AppState, firebaseConfig: any) => Promise<false | {
reconciledElements: SyncableExcalidrawElement[] | null;
}>;
export declare const loadFromFirebase: (roomId: string, roomKey: string, socket: Video.Room | null, firebaseConfig: any) => Promise<readonly ExcalidrawElement[] | null>;
export declare const loadFilesFromFirebase: (prefix: string, decryptionKey: string, filesIds: readonly FileId[], firebaseConfig: any) => Promise<{
loadedFiles: BinaryFileData[];
erroredFiles: Map<FileId, true>;
}>;