import type { Codec } from '../hierarchy/codec.ts';
import { Scope } from '../hierarchy/scope.ts';
export declare const DATE_LEN = 10;
/**
 * The tree of a Google app mount: its corpora and their files. One
 * description per app: readdir, stat, read and unlink all classify through
 * it, so the file surface and the write surface cannot disagree about what a
 * path means. Sheets, Docs and Slides differ only in the codec of a file
 * name. The name splits on its first `__`: the title is sanitized and holds
 * none, and a Drive file id can. Mirrors Python's `app_scopes`.
 */
export declare function appScopes(fileName: Codec): readonly Scope[];
/**
 * Build an app file's name from its title, id and modified date.
 *
 * The title takes whatever of the 255-byte NAME_MAX the date, the id and the
 * suffix leave, rather than a flat character count: those are the same number
 * only for ASCII, and a 100-character CJK title rendered a name ext4 and APFS
 * reject outright. The id never gives, so the name keeps addressing the file
 * -- same rule as gcal's event filenames. Sheets, Docs and Slides differ only
 * in the suffix. Mirrors Python's `app_filename`.
 */
export declare function appFilename(title: string, fileId: string, modifiedTime: string, suffix: string): string;
//# sourceMappingURL=scope.d.ts.map