import type { DropboxTokenManager } from './client.ts'; type DropboxEntryTag = 'file' | 'folder' | 'deleted'; export interface DropboxEntry { '.tag': DropboxEntryTag; id?: string; name: string; path_lower?: string; path_display?: string; size?: number; client_modified?: string; server_modified?: string; rev?: string; content_hash?: string; } /** * List a folder's entries, following every continuation cursor. * * `/` and `''` both mean the account root. */ export declare function listFolder(tm: DropboxTokenManager, path: string, opts?: { recursive?: boolean; /** Entries per request. */ pageSize?: number; /** * Stop once this many entries are in hand and do not request another * page. An emptiness probe wants one entry, and `pageSize` alone * cannot express that: it caps the page, not the walk, so a small * page turned a listing of a large folder into many requests instead * of fewer. */ limit?: number | null; }): Promise; export declare function getMetadata(tm: DropboxTokenManager, path: string): Promise; export declare function createFolder(tm: DropboxTokenManager, path: string): Promise; export declare function deletePath(tm: DropboxTokenManager, path: string): Promise; export declare function movePath(tm: DropboxTokenManager, from: string, to: string): Promise; export declare function copyPath(tm: DropboxTokenManager, from: string, to: string): Promise; export declare const SEARCH_PAGE = 1000; export declare const MAX_SEARCH_MATCHES = 10000; export interface SearchFilesResult { paths: [string, string][]; truncated: boolean; } /** * Collect `[path_lower, path_display]` file matches for a search query. * * Pages through `/files/search_v2` and `/files/search/continue_v2`, * deduplicating across pages (the API may repeat results between pages). * `path: ''` searches the whole account. `truncated` reports whether the * result hit the API's 10,000-match ceiling (a truncated set is not a * trustworthy superset). */ export declare function searchFiles(tm: DropboxTokenManager, query: string, opts?: { path?: string; filenameOnly?: boolean; }): Promise; export {}; //# sourceMappingURL=api.d.ts.map