interface NestedObject {
    [key: string]: string | NestedObject | undefined;
}
interface SheetData {
    [key: string]: NestedObject;
}
declare class SheetManager {
    private doc;
    private jwt;
    constructor(privateKey: string, clientEmail: string, sheetId: string);
    init(userPath: string, sheetNames?: string[]): Promise<void>;
    read(sheetPosition?: number): Promise<SheetData>;
    readByName(sheetName: string): Promise<SheetData>;
    readAllSheets(): Promise<{
        [sheetName: string]: SheetData;
    }>;
    private processSheet;
    private setNestedValue;
    write(data: SheetData, directoryPath: string, sheetPrefix?: string): void;
    listSheets(): Promise<string[]>;
}

export { SheetManager };
