import type OpenAI from 'openai';
import type { TODO_any } from '../../utils/organization/TODO_any';
/**
 * Uploads prepared knowledge-source files and starts vector-store ingestion polling.
 *
 * @private helper of `OpenAiVectorStoreHandler`
 */
export declare class OpenAiVectorStoreFileBatchHandler {
    private readonly options;
    /**
     * Creates one vector-store file-batch handler instance.
     */
    constructor(options: {
        readonly isVerbose: boolean;
        readonly getVectorStoresApi: (client: OpenAI) => TODO_any;
    });
    /**
     * Uploads knowledge source files to the vector store and polls until processing completes.
     */
    uploadKnowledgeSourceFilesToVectorStore(options: {
        readonly client: OpenAI;
        readonly vectorStoreId: string;
        readonly files: ReadonlyArray<File>;
        readonly totalBytes: number;
        readonly maxConcurrency: number;
        readonly pollIntervalMs: number;
        readonly uploadTimeoutMs: number;
        readonly shouldContinueOnVectorStoreStall: boolean;
        readonly logLabel: string;
    }): Promise<TODO_any | null>;
    /**
     * Uploads the prepared knowledge-source files with bounded concurrency.
     */
    private uploadPreparedKnowledgeSourceFiles;
    /**
     * Reuses the shared iterator to upload one slice of knowledge-source files.
     */
    private uploadPreparedKnowledgeSourceFilesWorker;
    /**
     * Uploads one prepared knowledge-source file to OpenAI and records detailed diagnostics.
     */
    private uploadPreparedKnowledgeSourceFile;
    /**
     * Creates the OpenAI vector-store file batch for the uploaded knowledge-source files.
     */
    private createVectorStoreFileBatch;
    /**
     * Logs warnings for unexpected vector-store batch metadata right after creation.
     */
    private logCreatedVectorStoreFileBatchIssues;
}
