import { ARCCookie } from '@advanced-rest-client/arc-types/src/cookies/Cookies'; import { ARCAuthData } from '@advanced-rest-client/arc-types/src/models/AuthData'; import { ARCCertificateIndex, ARCRequestCertificate } from '@advanced-rest-client/arc-types/src/models/ClientCertificate'; import { ARCHostRule } from '@advanced-rest-client/arc-types/src/models/HostRule'; import { ARCProject } from '@advanced-rest-client/arc-types/src/models/Project'; import { ARCRestApi, ARCRestApiIndex } from '@advanced-rest-client/arc-types/src/models/RestApi'; import { ARCUrlHistory } from '@advanced-rest-client/arc-types/src/models/UrlHistory'; import { ARCEnvironment, ARCVariable } from '@advanced-rest-client/arc-types/src/models/Variable'; import { ARCHistoryRequest, ARCSavedRequest } from '@advanced-rest-client/arc-types/src/request/ArcRequest'; import { ArcDataMockInit, CertificateCreateInit, InsertSavedResult, ProjectCreateInit, RequestHistoryInit, RequestSavedInit, RestApiIndexInit, VariableInit } from '../../types'; import { Authorization } from './Authorization'; import { Certificates } from './Certificates'; import { Cookies } from './Cookies'; import { HostRules } from './HostRules'; import { Http } from './Http'; import { RestApi } from './RestApi'; import { Urls } from './Urls'; import { Variables } from './Variables'; export declare class Store { http: Http; urls: Urls; variables: Variables; cookies: Cookies; authorization: Authorization; hostRules: HostRules; restApi: RestApi; certificates: Certificates; constructor(init?: ArcDataMockInit); /** * Creates `_id` on the original insert object if it wasn't created before and * updates `_rev` property. * * @param insertResponse PouchDB build insert response * @param insertedData The original array of inserted objects. * This changes contents of te array items which is passed by reference. */ updateRevsAndIds(insertResponse: (PouchDB.Core.Response|PouchDB.Core.Error)[], insertedData: T[]): PouchDB.Core.ExistingDocument[]; /** * Generates saved requests data and inserts them into the data store if they * are missing. * * @param requestsSize Default 25 * @param projectsSize Default 5 * @param requestsInit * @param projectInit * @returns Resolved promise when data are inserted into the datastore. * Promise resolves to generated data object */ insertSaved(requestsSize?: number, projectsSize?: number, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise; /** * Generates and saves history data to the data store. * * @param size The number of requests to generate. Default to 25. * @param init History init options. * @returns Promise resolved to generated history objects. */ insertHistory(size?: number, init?: RequestHistoryInit): Promise[]>; /** * Generates and saves a list of project objects. * * @param size Number of projects to insert. Default to 5. */ insertProjects(size?: number, init?: ProjectCreateInit): Promise[]>; /** * Inserts saved data only if the store is empty. * @param requestsSize Default 25 * @param projectsSize Default 5 * @returns Resolved promise when data are inserted into the datastore. */ insertSavedIfNotExists(requestsSize?: number, projectsSize?: number, requestsInit?: RequestSavedInit, projectInit?: ProjectCreateInit): Promise; /** * Inserts history data if the store is empty. * * @param size The number of requests to generate. Default to 25. * @param init History init options. * @returns Resolved promise when data are inserted into the datastore. */ insertHistoryIfNotExists(size?: number, init?: RequestHistoryInit): Promise[]>; /** * Destroys saved and projects database. * @returns Resolved promise when the data are cleared. */ destroySaved(): Promise; /** * Destroys history database. * @returns Resolved promise when the data are cleared. */ destroyHistory(): Promise; /** * Destroys legacy projects database. * @returns Resolved promise when the data are cleared. */ clearLegacyProjects(): Promise; /** * Generates and saves websocket data to the data store. * * @param size The number of websocket data to insert. */ insertWebsockets(size?: number): Promise[]>; /** * Generates and saves url history data to the data store. * * @param size The number of URL history data to insert. */ insertUrlHistory(size?: number): Promise[]>; /** * Destroys websockets URL history database. * @returns Resolved promise when the data are cleared. */ destroyWebsockets(): Promise; /** * Destroys URL history database. * @returns Resolved promise when the data are cleared. */ destroyUrlHistory(): Promise; /** * Generates and saves variables data to the data store. * * @param size The number of variables to generate. * @param init * @returns Promise resolves to inserted variables. */ insertVariables(size?: number, init?: VariableInit): Promise[]>; /** * Generates and saves variables data to the data store and then environments generated from the variables. * * @param size The number of variables to generate. * @param init * @returns Promise resolves to inserted variables. */ insertVariablesAndEnvironments(size?: number, init?: VariableInit): Promise[]>; /** * Destroys variables and environments database. * @returns Resolved promise when the data are cleared. */ destroyVariables(): Promise; /** * Generates and saves cookies data to the data store. * * @param size Number of cookies to insert. Default to 25. */ insertCookies(size?: number): Promise[]>; /** * Destroys cookies database. * @returns Resolved promise when the data are cleared. */ destroyCookies(): Promise; /** * Generates and saves basic auth data to the data store. * * @param size Number of auth data to insert. Default to 25. * @returns Promise resolved to created auth data. */ insertBasicAuth(size?: number): Promise[]>; /** * Destroys auth data database. * @returns Resolved promise when the data are cleared. */ destroyBasicAuth(): Promise; /** * Generates and saves host rules data to the data store. * * @param size Number of rules to insert. Default to 25. */ insertHostRules(size?: number): Promise[]>; /** * Destroys hosts data database. * @returns Resolved promise when the data are cleared. */ destroyHostRules(): Promise; insertApis(size?: number, init?: RestApiIndexInit): Promise<(PouchDB.Core.ExistingDocument)[]>; /** * Destroys api-index data database. * @returns Resolved promise when the data are cleared. */ destroyApiIndexes(): Promise; /** * Destroys api-data database. * @returns Resolved promise when the data are cleared. */ destroyApiData(): Promise; destroyApisAll(): Promise; /** * @param size The number of certificates to generate. * @param {CertificateCreateInit=} opts Create options */ insertCertificates(size?: number, opts?: CertificateCreateInit): Promise[]>; destroyClientCertificates(): Promise; /** * Destroys all databases. * @returns Resolved promise when the data are cleared. */ destroyAll(): Promise; /** * Deeply clones an object. * @param obj Object to be cloned * @returns Copied object */ clone(obj: T): T; /** * Reads all data from a data store. * @param name Name of the data store to read from. Without `_pouch_` prefix * @returns Promise resolved to all read docs. */ getDatastoreData(name: string): Promise; /** * Returns a promise with all saved requests */ getDatastoreRequestData(): Promise[]>; /** * Returns a promise with all legacy projects */ getDatastoreProjectsData(): Promise[]>; /** * Returns a promise with all history requests */ getDatastoreHistoryData(): Promise[]>; /** * Returns a promise with all variables */ getDatastoreVariablesData(): Promise[]>; getDatastoreEnvironmentsData(): Promise[]>; getDatastoreCookiesData(): Promise[]>; getDatastoreWebsocketsData(): Promise[]>; getDatastoreUrlsData(): Promise[]>; getDatastoreAuthData(): Promise[]>; getDatastoreHostRulesData(): Promise[]>; getDatastoreApiIndexData(): Promise[]>; getDatastoreHostApiData(): Promise[]>; getDatastoreClientCertificates(): Promise<(ARCCertificateIndex|ARCRequestCertificate)[][]>; /** * Updates an object in an data store. * * @param dbName Name of the data store. * @param obj The object to be stored. * @returns A promise resolved to insert result. */ updateObject(dbName: string, obj: any): Promise; }