declare class Builder { static Create(): Builder; private timer_; private auto_start_; WithTimer(callback: (timer: Timer) => void): this; WithWaitTime(value: number): this; WithOneShot(value: boolean): this; WithTimeOutCallback(callback: (connection?: RBXScriptConnection) => void, with_connection?: (connection: RBXScriptConnection) => void): this; WithAutoStart(): this; Build(): Timer; } type CallableBuilder = typeof Builder & { (): Builder; }; export declare class Timer { static Builder: CallableBuilder; WaitTime: number; private time_left_; GetTimeLeft(): number; /** * if one_shot if true, the timer will work only once and will stop * if false timer works until the manual Stop() * * default is true */ OneShot: boolean; Paused: boolean; private stopped_; IsStopped(): boolean; private time_out_event_; readonly OnTimeOut: RBXScriptSignal; private update_connection_?; Start(time_sec?: number): void; private Update; Stop(): void; Destroy(): void; } export {};