interface Storage { get(key: string, defaultValue?: T): T; put(key: string, value: T): void; remove(key: string): void; contains(key: string): boolean; clear(): void; } declare namespace storages { function create(name: string): Storage; function remove(name: string): boolean; }