/// import type { BackendClass, BackendEntry, ConfigWithDefaults, DisplayURL, ImplementationEntry, ImplementationFile, ImplementationMediaFile, PersistOptions, UnpublishedEntry, User } from '@staticcms/core'; import type { Cursor } from '@staticcms/core/lib/util'; import type AssetProxy from '@staticcms/core/valueObjects/AssetProxy'; export default class ProxyBackend implements BackendClass { proxyUrl: string; mediaFolder?: string; publicFolder?: string; options: {}; branch: string; cmsLabelPrefix?: string; constructor(config: ConfigWithDefaults, options?: {}); status(): Promise<{ auth: { status: boolean; }; api: { status: boolean; statusPage: string; }; }>; authComponent(): import("react").FC; restoreUser(): Promise; authenticate(): Promise; logout(): null; getToken(): Promise; request(payload: { action: string; params: Record; }): Promise; entriesByFolder(folder: string, extension: string, depth: number): Promise; entriesByFiles(files: ImplementationFile[]): Promise; getEntry(path: string): Promise; persistEntry(entry: BackendEntry, options: PersistOptions): Promise; getMedia(mediaFolder?: string | undefined, folderSupport?: boolean, publicFolder?: string | undefined): Promise<{ id: string; name: string; displayURL: { id: string; path: string; }; path: string; isDirectory: boolean; }[]>; getMediaFile(path: string): Promise; getMediaDisplayURL(displayURL: DisplayURL): Promise; persistMedia(assetProxy: AssetProxy, options: PersistOptions): Promise<{ id: string; name: string; path: string; file: File; size: number; url: string; displayURL: string; }>; deleteFiles(paths: string[], commitMessage: string): Promise; traverseCursor(): Promise<{ entries: ImplementationEntry[]; cursor: Cursor; }>; allEntriesByFolder(folder: string, extension: string, depth: number): Promise; unpublishedEntries(): Promise; unpublishedEntry({ id, collection, slug, }: { id?: string; collection?: string; slug?: string; }): Promise; unpublishedEntryDataFile(collection: string, slug: string, path: string, id: string): Promise; unpublishedEntryMediaFile(collection: string, slug: string, path: string, id: string): Promise<{ id: string; name: string; path: string; file: File; size: number; url: string; displayURL: string; }>; updateUnpublishedEntryStatus(collection: string, slug: string, newStatus: string): Promise; publishUnpublishedEntry(collection: string, slug: string): Promise; deleteUnpublishedEntry(collection: string, slug: string): Promise; getDeployPreview(collection: string, slug: string): Promise<{ url: string; status: string; } | null>; }