import { SmrtCollection } from '@happyvertical/smrt-core'; import { Asset } from './asset'; import { AssetCollection } from './assets'; import { Folder } from './folder'; export declare class FolderCollection extends SmrtCollection { static readonly _itemClass: typeof Folder; /** * Get the folder tree starting from an optional root. * * When `rootId` is omitted, returns top-level folders (those with no * parent). When `rootId` is provided, returns all descendants of that * folder via the inherited SmrtHierarchical BFS traversal — same * cycle-safe, one-query-per-depth behaviour as Place/Event. * * @param rootId - Optional root folder ID; if omitted, returns top-level folders * @returns Array of folders (flat list; use parentId to reconstruct tree) */ getTree(rootId?: string): Promise; /** * Get the path from root to a given folder (ancestors + self). * * @param folderId - The folder ID to get the path for * @returns Array of folders from root to the given folder (inclusive) */ getPath(folderId: string): Promise; /** * Get all assets that are direct children of a folder. * * Folder membership is recorded on `Asset.folderId`, not on the folder * itself, so this is delegated to the asset collection. * * @param folderId - The folder ID * @param assetCollection - An AssetCollection instance for querying * @returns Array of assets in this folder */ getContents(folderId: string, assetCollection: AssetCollection): Promise; /** * Move an asset into a folder (or out, by passing `null`). * * @param asset - The asset to move * @param folderId - The target folder ID (or null to move to root) */ moveAsset(asset: Asset, folderId: string | null): Promise; } //# sourceMappingURL=folders.d.ts.map