ts-mock-imports
Version:
Intuitive mocking for Typescript class imports
24 lines (23 loc) • 1.14 kB
TypeScript
/// <reference types="sinon" />
import { InPlaceMockManager, MockManager, OtherManager, StaticMockManager } from './managers/index';
import { IConstruct, IModule } from './types';
export declare class ImportMock {
static mockClass<T, K extends IModule = any>(module: {
[importName: string]: IConstruct<T>;
} | K, importName?: keyof K): MockManager<T>;
static mockClassInPlace<T, K extends IModule = any>(module: {
[importName: string]: IConstruct<T>;
} | K, importName?: keyof K): InPlaceMockManager<T>;
static mockStaticClass<T, K extends IModule = any>(module: {
[importName: string]: IConstruct<T>;
} | K, importName?: keyof K): StaticMockManager<T>;
static mockFunction<K extends IModule>(module: {
[importName: string]: () => any;
} | K, importName?: keyof K, returns?: any): sinon.SinonStub;
static mockOther<T extends IModule, K extends keyof T>(module: {
[importName: string]: T[K];
} | T, importName?: K, replaceWith?: Partial<T[K]>): OtherManager<T[K]>;
static restore(): void;
private static sandboxedItems;
private static sandbox;
}