export declare const EVENT_SUFFIX = ".gcal.json";
export declare const CALENDAR_FILE = "calendar.json";
export declare const PRIMARY_DIR = "primary";
/** Pick the title segment for an event filename. */
export declare function eventTitle(summary: string | null, freeBusy?: boolean): string;
/**
 * Build an event filename: id first, then the day-local times, then title.
 *
 * The id leads so that trimming the title can never make two events collide
 * and so `ls <idprefix>*` addresses one event. Google event ids are 5-1024
 * characters by spec (26 in practice), so the title takes whatever of the
 * 255-byte NAME_MAX is left rather than a fixed character count. In a
 * multi-day bucket the day goes before the times, since the directory no
 * longer names it.
 */
export declare function makeEventFilename(eventId: string, hhmm: string, title: string, day?: string | null): string;
/**
 * Recover `[eventId, day]` from an event filename.
 *
 * Splitting on the first `__` is safe because a Google event id is base32hex
 * and can hold neither an underscore nor a separator, while a title
 * routinely holds both. The day is null in a one-day bucket, whose directory
 * is the day.
 */
export declare function parseEventFilename(name: string): [string, string | null];
/**
 * Build the directory name for one calendar.
 *
 * The primary calendar is spelled `primary` because that is the stable alias
 * every Calendar API call accepts, and its summary is only the account's own
 * email address.
 */
export declare function makeCalendarDirname(summary: string, calendarId: string, primary?: boolean): string;
//# sourceMappingURL=event_entry.d.ts.map