import { Logger } from '@n8n/backend-common'; import type { StringValue as TimeUnitValue } from 'ms'; import type { INodeExecutionData, IBinaryData } from 'n8n-workflow'; import type { Readable } from 'stream'; import { ErrorReporter } from '../errors'; import { BinaryDataConfig } from './binary-data.config'; import type { BinaryData } from './types'; export declare class BinaryDataService { private readonly config; private readonly errorReporter; private readonly logger; private mode; private managers; constructor(config: BinaryDataConfig, errorReporter: ErrorReporter, logger: Logger); setManager(mode: BinaryData.ServiceMode, manager: BinaryData.Manager): void; init(): Promise; createSignedToken(binaryData: IBinaryData, expiresIn?: TimeUnitValue): string; validateSignedToken(token: string): string; copyBinaryFile(location: BinaryData.FileLocation, binaryData: IBinaryData, filePath: string): Promise; store(location: BinaryData.FileLocation, bufferOrStream: Buffer | Readable, binaryData: IBinaryData): Promise; getAsStream(binaryDataId: string, chunkSize?: number): Promise; getAsBuffer(binaryData: IBinaryData): Promise>; getPath(binaryDataId: string): string; getMetadata(binaryDataId: string): Promise; deleteMany(locations: BinaryData.FileLocation[]): Promise; deleteManyByBinaryDataId(ids: string[]): Promise; duplicateBinaryData(location: BinaryData.FileLocation, inputData: Array): Promise; rename(oldFileId: string, newFileId: string): Promise; private createBinaryDataId; private duplicateBinaryDataInExecData; private getManager; }