import type { AuthParams, BlueprintLog } from '../../utils/types.js';
export interface LogStreamingConfig {
    stackId: string;
    after?: string;
    auth: AuthParams;
    showBanner?: boolean;
    log: (message: string) => void;
}
export interface StreamLogsOptions {
    stackId: string;
    after?: string;
    auth: AuthParams;
    onLog: (log: BlueprintLog) => void;
    onOpen: () => void;
    onError: (error: string) => void;
}
export declare function streamLogs({ stackId, after, auth, onLog, onOpen, onError, }: StreamLogsOptions): () => void;
/** Check if a log is newer than a given timestamp */
export declare function isNewerLog(log: BlueprintLog, timestamp: number): boolean;
/**
 * Sets up log streaming for operations like deploy or destroy with spinner integration
 * @param config Configuration for log streaming
 * @returns A cleanup function for closing the log stream
 */
export declare function setupLogStreaming(config: LogStreamingConfig): Promise<() => void>;
