@elastic.io/maester-client
Version:
The official object-storage client
33 lines (32 loc) • 1.55 kB
TypeScript
import { Readable } from 'stream';
import { StorageClient } from './StorageClient';
import { TransformMiddleware, ReqWithBodyOptions, ReqOptions, uploadData } from './interfaces';
export declare class ObjectStorage {
private client;
private forwards;
private reverses;
constructor(config: {
uri: string;
jwtSecret?: string;
userAgent?: string;
msgId?: string;
}, client?: StorageClient);
private applyMiddlewares;
private getDataByResponseType;
private payloadToStream;
private formStreamGetter;
use(forward: TransformMiddleware, reverse: TransformMiddleware): ObjectStorage;
/**
* @param dataOrFunc async function returning stream OR any data (except 'undefined')
*/
add(dataOrFunc: uploadData | (() => Promise<Readable>), reqWithBodyOptions?: ReqWithBodyOptions): Promise<any>;
/**
* @param dataOrFunc async function returning stream OR any data (except 'undefined')
*/
update(objectId: string, dataOrFunc: uploadData | (() => Promise<Readable>), reqWithBodyOptions?: ReqWithBodyOptions): Promise<any>;
getOne(objectId: string, reqOptions?: ReqOptions): Promise<any>;
getAllByParams(params: object, reqOptions?: ReqOptions): Promise<any>;
getHeaders(objectId: string, reqOptions?: ReqOptions): Promise<any>;
deleteOne(objectId: string, reqOptions?: ReqOptions): Promise<import("axios").AxiosResponse<any, any>>;
deleteAllByParams(params: object, reqOptions?: ReqOptions): Promise<import("axios").AxiosResponse<any, any>>;
}