import { SessionStateManager } from './session-state.js'; import { QueryInputStream } from './input-iterable.js'; import type { AccountingAccumulator } from './accounting-accumulator.js'; import type { SessionShutdown } from './session-shutdown.js'; import type { AgentConfig } from '../types.js'; import type { ProviderQuery, ProviderEvent } from '../provider.js'; import type { HookRegistry } from '../hooks.js'; import type { TransformDeps } from './stream-consumer.js'; export interface ProviderLifecycleResult { stateManager: SessionStateManager; inputStream: QueryInputStream; providerQuery: ProviderQuery; providerIterator: AsyncIterator; } export declare function buildProviderLifecycle(config: AgentConfig): ProviderLifecycleResult; export declare function runInitialization(config: AgentConfig, getProviderIterator: () => AsyncIterator, abortSignal: AbortSignal, stateManager: SessionStateManager, accounting: AccountingAccumulator, shutdown: SessionShutdown, hookRegistry: HookRegistry | undefined, queueFrameworkContext: (text: string) => void, buildTransformDeps: () => TransformDeps): Promise;