/**
 * Test fixtures and mock utilities for agent testing
 *
 * Provides properly typed mock objects and factory functions
 * to replace unsafe `as any` assertions in tests.
 */
import type { Logger, StepFn, WorkflowTools } from '@polka-codes/core';
import type { CliWorkflowContext } from './types';
/**
 * Mock logger for testing
 */
export declare function createMockLogger(): Logger;
/**
 * Mock step function for testing
 */
export declare function createMockStepFn(): StepFn;
/**
 * Mock tools for testing
 */
export declare function createMockTools(): WorkflowTools<any>;
/**
 * Mock workflow context for testing
 */
export declare function createMockContext(overrides?: Partial<CliWorkflowContext>): CliWorkflowContext;
/**
 * Mock agent config for testing
 */
export declare function createMockConfig(): {
    resourceLimits: {
        maxMemory: number;
        maxSessionTime: number;
        maxTaskExecutionTime: number;
    };
    approval: {
        level: "none";
        autoApproveSafeTasks: boolean;
        maxAutoApprovalCost: number;
    };
    destructiveOperations: {
        allowBranchDeletion: boolean;
        allowForcePush: boolean;
        allowStagingReset: boolean;
    };
    discovery: {
        strategy: "default";
        maxTasksPerIteration: number;
        taskPrioritization: boolean;
    };
    stateDir: string;
};
/**
 * Mock agent state for testing
 */
export declare function createMockState(): {
    currentMode: "idle";
    currentGoal: null;
    config: {
        resourceLimits: {
            maxMemory: number;
            maxSessionTime: number;
            maxTaskExecutionTime: number;
        };
        approval: {
            level: "none";
            autoApproveSafeTasks: boolean;
            maxAutoApprovalCost: number;
        };
        destructiveOperations: {
            allowBranchDeletion: boolean;
            allowForcePush: boolean;
            allowStagingReset: boolean;
        };
        discovery: {
            strategy: "default";
            maxTasksPerIteration: number;
            taskPrioritization: boolean;
        };
        stateDir: string;
    };
    taskQueue: never[];
    completedTasks: never[];
    failedTasks: never[];
    startTime: number;
    lastActivity: number;
    sessionMetadata: {
        pid: number;
        hostname: string;
        username: string;
    };
};
//# sourceMappingURL=test-fixtures.d.ts.map