import * as axios from 'axios';

declare function StorageAdapter(opts: any): axios.AxiosAdapter;

/**
 * Cache service class which is used to create the database
 */
declare class CacheService {
    static IndxDb: IDBFactory;
    static db: IDBDatabase | any;
    static dbName: string;
    static tableName: string;
    static refreshData: boolean;
    static cacheUrl: never[];
    static skipParams: never[];
    static setupDB(dbName?: string, tableName?: string, skipParams?: never[]): Promise<void>;
    static AddTables(e: any): Promise<void>;
    static saveData(url: any, data: any): Promise<void>;
    static validateUrl(endpoint: string): never[];
    static getData(id: string): Promise<unknown>;
    static addTab(): void;
    static removeTabItem(e: any): void;
    static resetDB(e: any): void;
    static deleteDB(): void;
    static deleteData(): Promise<void>;
}

export { CacheService, StorageAdapter };
