import * as dependency_3 from "./../../../protobuf/duration";
import * as dependency_4 from "./../../../protobuf/timestamp";
import * as dependency_5 from "./../../../type/dayofweek";
import * as pb_1 from "google-protobuf";
export declare class BackupSchedule extends pb_1.Message {
    #private;
    constructor(data?: any[] | ({
        name?: string;
        create_time?: dependency_4.Timestamp;
        update_time?: dependency_4.Timestamp;
        retention?: dependency_3.Duration;
    } & (({
        daily_recurrence?: DailyRecurrence;
        weekly_recurrence?: never;
    } | {
        daily_recurrence?: never;
        weekly_recurrence?: WeeklyRecurrence;
    }))));
    get name(): string;
    set name(value: string);
    get create_time(): dependency_4.Timestamp;
    set create_time(value: dependency_4.Timestamp);
    get has_create_time(): boolean;
    get update_time(): dependency_4.Timestamp;
    set update_time(value: dependency_4.Timestamp);
    get has_update_time(): boolean;
    get retention(): dependency_3.Duration;
    set retention(value: dependency_3.Duration);
    get has_retention(): boolean;
    get daily_recurrence(): DailyRecurrence;
    set daily_recurrence(value: DailyRecurrence);
    get has_daily_recurrence(): boolean;
    get weekly_recurrence(): WeeklyRecurrence;
    set weekly_recurrence(value: WeeklyRecurrence);
    get has_weekly_recurrence(): boolean;
    get recurrence(): "none" | "daily_recurrence" | "weekly_recurrence";
    static fromObject(data: {
        name?: string;
        create_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        update_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        retention?: ReturnType<typeof dependency_3.Duration.prototype.toObject>;
        daily_recurrence?: ReturnType<typeof DailyRecurrence.prototype.toObject>;
        weekly_recurrence?: ReturnType<typeof WeeklyRecurrence.prototype.toObject>;
    }): BackupSchedule;
    toObject(): {
        name?: string;
        create_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        update_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        retention?: ReturnType<typeof dependency_3.Duration.prototype.toObject>;
        daily_recurrence?: ReturnType<typeof DailyRecurrence.prototype.toObject>;
        weekly_recurrence?: ReturnType<typeof WeeklyRecurrence.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): BackupSchedule;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): BackupSchedule;
}
export declare class DailyRecurrence extends pb_1.Message {
    #private;
    constructor(data?: any[] | {});
    static fromObject(data: {}): DailyRecurrence;
    toObject(): {};
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DailyRecurrence;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DailyRecurrence;
}
export declare class WeeklyRecurrence extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        day?: dependency_5.DayOfWeek;
    });
    get day(): dependency_5.DayOfWeek;
    set day(value: dependency_5.DayOfWeek);
    static fromObject(data: {
        day?: dependency_5.DayOfWeek;
    }): WeeklyRecurrence;
    toObject(): {
        day?: dependency_5.DayOfWeek;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): WeeklyRecurrence;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): WeeklyRecurrence;
}
//# sourceMappingURL=schedule.d.ts.map