declare abstract class ResourceManager { private resources; abstract create(resourceArgs: Args): T; abstract destroy(resource: T): void; add(resourceArgs: Args): T; remove(resource: T): void; removeAll(): void; } declare class IntervalsManager extends ResourceManager> { create(args: Parameters): number; destroy(interval: number): void; } declare class TimeoutsManager extends ResourceManager> { create(args: Parameters): number; destroy(timeout: number): void; } export declare const intervalsManager: IntervalsManager; export declare const timeoutsManager: TimeoutsManager; export {};