import { type SlashPathFile, type SlashPathFolder, type SlashPath, type Maybe } from '@dereekb/util'; import { type StorageFileGroupId } from './storagefile.id'; /** * Root folder in Firebase Storage where all StorageFileGroup-generated files are stored. * * Each group gets a subfolder: `/sfg/{storageFileGroupId}/`. */ export declare const STORAGE_FILE_GROUP_ROOT_FOLDER_PATH: SlashPathFolder; /** * Builds the storage folder path for a specific StorageFileGroup, optionally with sub-paths. * * @param storageFileGroupId - the group's document ID * @param subPath - optional sub-paths to append * @returns the folder path as a SlashPathFolder string * * @example * ```ts * const folder = storageFileGroupFolderPath('abc123'); * // folder === '/sfg/abc123/' * * const nested = storageFileGroupFolderPath('abc123', 'output'); * // nested === '/sfg/abc123/output/' * ``` */ export declare function storageFileGroupFolderPath(storageFileGroupId: StorageFileGroupId, ...subPath: Maybe[]): SlashPathFolder; /** * File name for a StorageFileGroup's generated zip archive within its folder. */ export declare const STORAGE_FILE_GROUP_ZIP_FILE_PATH: SlashPathFile; /** * Returns the full storage path for a StorageFileGroup's zip file. * * @param storageFileGroupId - the group's document ID * @returns the full SlashPath to the group's zip archive * * @example * ```ts * const zipPath = storageFileGroupZipFileStoragePath('abc123'); * // zipPath === '/sfg/abc123/z.zip' * ``` */ export declare function storageFileGroupZipFileStoragePath(storageFileGroupId: StorageFileGroupId): SlashPath;