import sinon from 'sinon'; /** * Result of creating a mock logger. */ export type MockLogger = { /** Type-safe Console mock with all methods stubbed */ logger: Console; /** Direct reference to the log stub for assertion access */ logStub: sinon.SinonStub; /** Direct reference to the warn stub for assertion access */ warnStub: sinon.SinonStub; }; /** * Create a type-safe mock Console logger for testing. * * Replaces the common `{ log: sinon.stub() } as unknown as Console` pattern * with a properly typed factory that satisfies the Console interface. * * @returns MockLogger with logger instance and direct stub references * * @example * ```typescript * const { logger, logStub } = createMockLogger(); * const service = new MyService(connection, config, logger); * await service.doWork(); * expect(logStub.calledWith('Processing...')).to.be.true; * ``` */ export declare function createMockLogger(): MockLogger;