/// /// import { IncomingMessage } from 'http'; import { Readable } from 'stream'; import { Logger } from './../../service/logger/logger'; import { InstanceOptions, IOResponse, RequestTracingConfig } from '../../HttpClient'; import { BucketMetadata, FileListItem, VBaseSaveResponse } from '../../responses'; import { IOContext } from '../../service/worker/runtime/typings'; import { InfraClient } from './InfraClient'; export declare class VBase extends InfraClient { constructor(context: IOContext, options?: InstanceOptions); getBucket: (bucket: string, tracingConfig?: RequestTracingConfig) => Promise; resetBucket: (bucket: string, tracingConfig?: RequestTracingConfig) => Promise>; listFiles: (bucket: string, opts?: string | VBaseOptions, tracingConfig?: RequestTracingConfig) => Promise; getFile: (bucket: string, path: string, tracingConfig?: RequestTracingConfig) => Promise<{ data: Buffer; headers: any; }>; getJSON: (bucket: string, path: string, nullIfNotFound?: boolean, conflictsResolver?: ConflictsResolver | undefined, tracingConfig?: RequestTracingConfig) => Promise; getRawJSON: (bucket: string, path: string, nullIfNotFound?: boolean, conflictsResolver?: ConflictsResolver | undefined, tracingConfig?: RequestTracingConfig) => Promise>; getFileStream: (bucket: string, path: string, tracingConfig?: RequestTracingConfig) => Promise; saveFile: (bucket: string, path: string, stream: Readable, gzip?: boolean, ttl?: number, tracingConfig?: RequestTracingConfig, ifMatch?: string) => Promise; getFileMetadata: (bucket: string, path: string, tracingConfig?: RequestTracingConfig) => Promise>; saveJSON: (bucket: string, path: string, data: T, tracingConfig?: RequestTracingConfig, ifMatch?: string) => Promise; saveZippedContent: (bucket: string, path: string, stream: Readable, tracingConfig?: RequestTracingConfig, ifMatch?: string) => Promise; deleteFile: (bucket: string, path: string, tracingConfig?: RequestTracingConfig, ifMatch?: string) => Promise>; getConflicts: (bucket: string, tracingConfig?: RequestTracingConfig) => Promise; resolveConflict: (bucket: string, path: string, content: any, tracingConfig?: RequestTracingConfig) => Promise; private saveContent; } export interface BucketFileList { data: FileListItem[]; next: string; smartCacheHeaders: any; } export interface VBaseOptions { prefix?: string; next?: string; limit?: number; } export interface VBaseSaveOptions { gzip?: boolean; unzip?: boolean; ttl?: number; } export interface VBaseConflictData { path: string; base: VBaseConflict; master: VBaseConflict; mine: VBaseConflict; } export interface VBaseConflict { contentOmitted: boolean; deleted: boolean; mimeType: string; parsedContent?: any; content: string; } export interface ConflictsResolver { resolve: (logger?: Logger) => T | Promise; }