/** Options accepted by the public projection command. */
export interface FileUpstreamOptions {
    /** JSON event file. When omitted, the command reads standard input. */
    readonly input?: string;
}
/** Injectable process boundaries used by unit tests. */
export interface FileUpstreamDependencies {
    readonly cwd?: string;
    readonly error?: (message: string) => void;
    readonly log?: (message: string) => void;
    readonly readStdin?: () => Promise<string>;
}
/**
 * Read an async byte stream in linear time under byte and chunk-count caps.
 * @param stream - Untrusted input chunks
 * @returns Strictly decoded UTF-8 payload
 */
export declare function readBoundedInputStream(stream: AsyncIterable<Buffer | string>): Promise<string>;
/**
 * Project one filing event and return the intended process exit code.
 * Rejections always produce empty stdout and one sanitized, field-named stderr
 * diagnostic.
 * @param options - Command options
 * @param dependencies - Injectable process boundaries
 * @returns Process exit code: zero on projection, one on rejection
 */
export declare function runFileUpstream(options?: FileUpstreamOptions, dependencies?: FileUpstreamDependencies): Promise<number>;
//# sourceMappingURL=file-upstream-cmd.d.ts.map