/** Consolidated Method Stubbing Utilities */ import sinon from 'sinon'; export { stub, stub as createStubMethod, spy, spy as spyOnMethod, spy as spyOnFunction, mock, mock as createMock, fake, fake as createFake, useFakeTimers, useFakeTimers as createFakeTimers, useFakeTimers as createFakeClock, restore, restore as restoreTimers, restore as restoreAll } from 'sinon'; export type StubRestoreFunction = () => void; export type StubFunction = (...args: any[]) => any; export type SinonStub = sinon.SinonStub; export type SinonSpy = sinon.SinonSpy; export type SinonMock = sinon.SinonMock; export type SinonFakeTimers = sinon.SinonFakeTimers; /** * Get the Sinon library instance */ export declare const getSinonLibrary: () => sinon.SinonStatic; /** * Verification utilities */ export declare const verifyCallCount: (spyOrStub: sinon.SinonSpy | sinon.SinonStub, expectedCount: number) => void; export declare const verifyCalledWith: (spyOrStub: sinon.SinonSpy | sinon.SinonStub, ...expectedArgs: any[]) => void; export declare const verifyCalledOnce: (spyOrStub: sinon.SinonSpy | sinon.SinonStub) => void; /** * Mock server utilities (legacy compatibility) */ export declare const createFakeServer: (options?: any) => { requests: never[]; respondWith: (method: string, url: string, response: any) => void; restore: () => void; }; export declare const createFakeXHR: () => { open: (method: string, url: string) => void; send: (data?: any) => void; setRequestHeader: (name: string, value: string) => void; }; /** * Enhanced stub creation with validation */ export declare const stubMethod: (data: { obj: any; methodName: string; stubFn: StubFunction; }) => { restore: StubRestoreFunction; }; /** * Utility collection */ export declare const stubUtilities: { enhancedStubMethod: (data: { obj: any; methodName: string; stubFn: StubFunction; }) => { restore: StubRestoreFunction; }; stubMethod: sinon.SinonStubStatic; createStubMethod: sinon.SinonStubStatic; spyOnMethod: sinon.SinonSpyStatic; spyOnFunction: sinon.SinonSpyStatic; createMock: sinon.SinonMockStatic; createFake: sinon.SinonFake; createFakeTimers: (config?: number | Date | Partial) => sinon.SinonFakeTimers; createFakeClock: (config?: number | Date | Partial) => sinon.SinonFakeTimers; restoreTimers: () => void; restoreAll: () => void; createFakeServer: (options?: any) => { requests: never[]; respondWith: (method: string, url: string, response: any) => void; restore: () => void; }; createFakeXHR: () => { open: (method: string, url: string) => void; send: (data?: any) => void; setRequestHeader: (name: string, value: string) => void; }; getSinonLibrary: () => sinon.SinonStatic; verifyCallCount: (spyOrStub: sinon.SinonSpy | sinon.SinonStub, expectedCount: number) => void; verifyCalledWith: (spyOrStub: sinon.SinonSpy | sinon.SinonStub, ...expectedArgs: any[]) => void; verifyCalledOnce: (spyOrStub: sinon.SinonSpy | sinon.SinonStub) => void; }; declare const _default: sinon.SinonStubStatic; export default _default; //# sourceMappingURL=stubMethod.d.ts.map