import { JetStreamClient, JetStreamManager, ObjectInfo, ObjectResult, ObjectStore, ObjectStoreMeta, ObjectStoreMetaOptions, ObjectStoreOptions, ObjectStorePutOpts, ObjectStoreStatus, PubAck } from "./types"; import { QueuedIterator } from "../nats-base-client/core"; import { PurgeResponse, StorageType, StreamInfo, StreamInfoRequestOptions } from "./jsapi_types"; export declare const osPrefix = "OBJ_"; export declare const digestType = "SHA-256="; export declare function objectStoreStreamName(bucket: string): string; export declare function objectStoreBucketName(stream: string): string; export declare class ObjectStoreStatusImpl implements ObjectStoreStatus { si: StreamInfo; backingStore: string; constructor(si: StreamInfo); get bucket(): string; get description(): string; get ttl(): number; get storage(): StorageType; get replicas(): number; get sealed(): boolean; get size(): number; get streamInfo(): StreamInfo; get metadata(): Record | undefined; get compression(): boolean; } export type ServerObjectStoreMeta = { name: string; description?: string; headers?: Record; options?: ObjectStoreMetaOptions; }; export type ServerObjectInfo = { bucket: string; nuid: string; size: number; chunks: number; digest: string; deleted?: boolean; mtime: string; revision: number; metadata?: Record; } & ServerObjectStoreMeta; export declare class ObjectStoreImpl implements ObjectStore { jsm: JetStreamManager; js: JetStreamClient; stream: string; name: string; constructor(name: string, jsm: JetStreamManager, js: JetStreamClient); _checkNotEmpty(name: string): { name: string; error?: Error; }; info(name: string): Promise; list(): Promise; rawInfo(name: string): Promise; _si(opts?: Partial): Promise; seal(): Promise; status(opts?: Partial): Promise; destroy(): Promise; _put(meta: ObjectStoreMeta, rs: ReadableStream | null, opts?: ObjectStorePutOpts): Promise; putBlob(meta: ObjectStoreMeta, data: Uint8Array | null, opts?: ObjectStorePutOpts): Promise; put(meta: ObjectStoreMeta, rs: ReadableStream | null, opts?: ObjectStorePutOpts): Promise; getBlob(name: string): Promise; get(name: string): Promise; linkStore(name: string, bucket: ObjectStore): Promise; link(name: string, info: ObjectInfo): Promise; delete(name: string): Promise; update(name: string, meta?: Partial): Promise; watch(opts?: Partial<{ ignoreDeletes?: boolean; includeHistory?: boolean; }>): Promise>; _chunkSubject(id: string): string; _metaSubject(n: string): string; _metaSubjectAll(): string; init(opts?: Partial): Promise; static create(js: JetStreamClient, name: string, opts?: Partial): Promise; }