import { Data, Encodeable, EncodeContext } from '@simonbackx/simple-encoding'; import { AuditLogReplacement } from '../AuditLogReplacement.js'; export declare class File implements Encodeable { id: string; server: string; name: string | null; /** * Set by the uploader, so not trustworthy - can be used as a hint. */ contentType: string | null; path: string; size: number; isPrivate: boolean; signedUrl: string | null; /** * A signature that proves that this file was generated by the server and is trusted. Without a valid signature, * the backend won't return a signedUrl for accessing the file. */ signature: string | null; /** * When using public/private keys inside the check functions, you can also only implement the check method * to verify signatures received from the backend. */ static verifyFile: ((file: File) => Promise) | null; static signFile: ((file: File) => Promise) | null; static getWithSignedUrl: ((file: File) => Promise) | null; constructor(data: { id: string; server: string; path: string; size: number; name?: string | null; isPrivate?: boolean; signedUrl?: string | null; signature?: string | null; contentType?: string | null; }); getDiffValue(): AuditLogReplacement; get signPayload(): string; static get signingEnabled(): boolean; sign(): Promise; verify(): Promise; withSignedUrl(): Promise; static decode(data: Data): File; encode(context: EncodeContext): { id: string; server: string; path: string; size: number; name: string | null; isPrivate: boolean; signedUrl: string | undefined; signature: string | null | undefined; contentType: string | undefined; }; getPublicPath(): string; static contentTypeToExtension(contentType: string): string | null; static removeExtension(filename: string): string; get icon(): "file" | "file-image" | "file-pdf color-pdf" | "file-excel color-excel" | "file-word color-word"; } //# sourceMappingURL=File.d.ts.map