import Endpoint, { FileFindOptions, FindOptions } from '../endpoint'; import { Addon, InstalledAddon, AddonVersion, AddonAPIAsyncResult, AddonData, AddonDataScheme, Relation, Job, AddonFile, ElasticSearchDocument, DIMXObject, SearchBody, SearchData, TemporaryFileRequest, TemporaryFile, CrawlerInput, MultiCrawlerInput, DistinctValuesBody, DistinctValuesResponse, MultiGetInput, MultiGetOutput, FilterObject, NebulusRebuildInput, InsertOutput } from '../entities'; import { DataImportInput, FileExportInput, FileImportInput, MappingInput, RecursiveExportInput, RecursiveImportInput } from '../entities/dimx_inputs'; import { PapiClient } from '../papi-client'; import { ConfigurationsEndpoints } from './configurations'; import { UpdateByQueryResponse, DataIndexBatchRequestBody } from '../entities/data-index'; declare class InstalledAddonEnpoint { private service; private addonUUID; constructor(service: PapiClient, addonUUID: string); install(version?: string, forceUpgrade?: boolean): Promise; uninstall(): Promise; upgrade(version?: string, forceUpgrade?: boolean): Promise; downgrade(version: string): Promise; get(): Promise; } declare class InstalledAddonsEnpoint extends Endpoint { constructor(service: PapiClient); addonUUID(uuid: string): InstalledAddonEnpoint; } declare class AddonApiEndpoint { private service; private options; constructor(service: PapiClient); uuid(uuid: string): this; file(fileName: string): this; func(functionName: string): this; sync(): this; async(): this; get(params?: any): Promise; post(params?: any, body?: any): Promise; private GetAddonApiUrl; } declare class AddonVersionEndpoint extends Endpoint { constructor(service: PapiClient); } declare class BatchEndpoint { private service; private baseURL; private body; private headers; constructor(service: PapiClient, baseURL: string, body: { Objects: AddonData[]; OverwriteObject?: boolean; WriteMode?: 'Merge' | 'Overwrite' | 'Insert'; MaxPageSize?: number; }, headers?: any); uuid(addonUUID: string): { resource: (resourceName: string) => Promise; }; } declare class DistinctValuesEndpoint { private service; private baseURL; private body; private headers; constructor(service: PapiClient, baseURL: string, body: DistinctValuesBody, headers?: any); uuid(addonUUID: string): { resource: (resourceName: string) => Promise; }; } declare class TableEndpoint extends Endpoint { private addonUUID; private tableName; constructor(service: PapiClient, addonUUID: string, tableName: string); upsert(object: AddonData, waitForIndex?: boolean): Promise; key(keyName: string): { get: () => Promise; hardDelete: (force?: boolean) => Promise; }; } export declare class AddonEndpoint extends Endpoint { constructor(service: PapiClient); installedAddons: InstalledAddonsEnpoint; versions: AddonVersionEndpoint; api: AddonApiEndpoint; configurations: ConfigurationsEndpoints; data: { schemes: { get: (params: FindOptions) => Promise; name: (name: string) => { get: () => Promise; }; post: (body: AddonDataScheme) => Promise; }; uuid: (addonUUID: string) => { table: (tableName: string) => TableEndpoint; }; batch: (body: { Objects: AddonData[]; OverwriteObject?: boolean; WriteMode?: 'Merge' | 'Overwrite' | 'Insert'; MaxPageSize?: number; }, headers?: any) => BatchEndpoint; distinct_values: (body: DistinctValuesBody, headers?: any) => DistinctValuesEndpoint; relations: Endpoint; import: { uuid: (addonUUID: string) => { table: (tableName: string) => { upsert: (body: DataImportInput) => Promise; }; }; file: { uuid: (addonUUID: string) => { table: (tableName: string) => { upsert: (body: FileImportInput) => Promise; }; }; recursive: { uuid: (addonUUID: string) => { table: (tableName: string) => { upsert: (body: RecursiveImportInput) => Promise; }; }; }; }; }; export: { file: { uuid: (addonUUID: string) => { table: (tableName: string) => { get: (body: FileExportInput) => Promise; }; }; recursive: { uuid: (addonUUID: string) => { table: (tableName: string) => { get: (body: RecursiveExportInput) => Promise; }; }; }; }; }; mapping: { uuid: (addonUUID: string) => { table: (tableName: string) => { upsert: (body: MappingInput) => Promise; }; }; }; search: { uuid: (addonUUID: string) => { table: (tableName: string) => { post: (searchBody: SearchBody) => Promise>; }; }; }; multi_get: (input: MultiGetInput) => Promise; insert: { uuid: (addonUUID: string) => { table: (tableName: string) => { post: (object: unknown) => Promise; }; }; }; }; index: { schemes: { uuid: (addonUUID: string) => { create: (body: ElasticSearchDocument) => Promise; purge: (body: ElasticSearchDocument) => Promise; }; }; uuid: (addonUUID: string) => { resource: (resourceName: string) => { create: (body: ElasticSearchDocument) => Promise; key: (key: string) => { get: () => Promise; }; find: (params: FindOptions) => Promise; }; }; batch: (body: DataIndexBatchRequestBody, headers?: any) => BatchEndpoint; distinct_values: (body: DistinctValuesBody, headers?: any) => DistinctValuesEndpoint; search: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; delete: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; update: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; }; shared_index: { schemes: { uuid: (addonUUID: string) => { create: (body: ElasticSearchDocument) => Promise; purge: (body: ElasticSearchDocument) => Promise; }; }; index: { index_name: (indexName: string) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => { create: (body: ElasticSearchDocument) => Promise; key: (key: string) => { get: () => Promise; }; find: (params: FindOptions) => Promise; }; }; batch: (body: DataIndexBatchRequestBody, headers?: any) => BatchEndpoint; distinct_values: (body: DistinctValuesBody, headers?: any) => DistinctValuesEndpoint; search: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; delete: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; update: (dslQuery: any) => { uuid: (addonUUID: string) => { resource: (resourceName: string) => Promise; }; }; }; }; }; pfs: { uuid: (addonUUID: string) => { schema: (schemaName: string) => { key: (keyName: string) => { get: () => Promise; }; find: (params: FileFindOptions) => Promise; post: (body: AddonFile) => Promise; }; }; temporaryFile: (temporaryFileRequest?: TemporaryFileRequest | undefined) => Promise; }; jobs: { uuid: (uuid: string) => { get: () => Promise; }; find: (params: FindOptions) => Promise; }; crawler: { crawl: (input: CrawlerInput, numberOfRetries?: number, callbackEncodedUrl?: string | undefined) => Promise; multi_crawl: (input: MultiCrawlerInput, numberOfRetries?: number, callbackEncodedUrl?: string | undefined) => Promise; }; febula: { profile_filters: { find: (params: FindOptions) => Promise; upsert: (body: FilterObject) => Promise; }; filters: { find: (params: FindOptions) => Promise; upsert: (body: FilterObject) => Promise; }; }; nebulus: { rebuild: (param: NebulusRebuildInput, callbackEncodedUrl?: string | undefined) => Promise; }; } export {};