import { HttpClientRepository, HttpRequest, HttpClientResponse } from "../repositories/HttpClientRepository"; import { D2SchemaProperties } from "../schemas"; import { Analytics } from "./analytics"; import { AppHub } from "./appHub"; import { Audit } from "./audit"; import { D2ApiDefinitionBase, D2ApiResponse, Params, HttpResponse } from "./common"; import { CurrentUser } from "./currentUser"; import { DataStore } from "./dataStore"; import { DataValues } from "./dataValues"; import { Email } from "./email"; import { Events } from "./events"; import { Expressions } from "./expressions"; import { Files } from "./files"; import { Maintenance } from "./maintenance"; import { MessageConversations } from "./messageConversations"; import { Metadata } from "./metadata"; import { Sharing } from "./sharing"; import { SqlViews } from "./SqlViews"; import { System } from "./system"; import { TrackedEntityInstances } from "./trackedEntityInstances"; import { Tracker } from "./tracker"; import { D2ApiOptions, D2ApiRequest, IndexedModels } from "./types"; import { UserLookup } from "./UserLookup"; export declare class D2ApiGeneric { baseUrl: string; apiPath: string; baseConnection: HttpClientRepository; apiConnection: HttpClientRepository; constructor(options?: D2ApiOptions); getMockAdapter(): import("axios-mock-adapter/types"); request(options: D2ApiRequest): D2ApiResponse; get(url: string, params?: Params): D2ApiResponse; post(url: string, params?: Params, data?: object, request?: Partial): D2ApiResponse; put(url: string, params?: Params, data?: object): D2ApiResponse; patch(url: string, data: object, params?: Params): D2ApiResponse; delete(url: string, params?: Params): D2ApiResponse; getVersion(): Promise; } export declare abstract class D2ApiVersioned extends D2ApiGeneric { private schemaModels; getIndexedModels(modelClass: any, modelKeys: Array): IndexedModels; dataStore(namespace: string): DataStore; userDataStore(namespace: string): DataStore; constructor(schemaModels: Record, options?: D2ApiOptions); get modelKeys(): Array | undefined; get metadata(): Metadata; get models(): IndexedModels; get currentUser(): CurrentUser; get analytics(): Analytics; get dataValues(): DataValues; get events(): Events; get trackedEntityInstances(): TrackedEntityInstances; get system(): System; get sharing(): Sharing; get messageConversations(): MessageConversations; get email(): Email; get files(): Files; get appHub(): AppHub; get maintenance(): Maintenance; get expressions(): Expressions; get audit(): Audit; get sqlViews(): SqlViews; get userLookup(): UserLookup; get tracker(): Tracker; } export declare function unwrap(res: HttpClientResponse>): T; export { D2ApiOptions };