import { TestingCore } from '../testing-core.abstract';
import { ExpectType } from '../../type';
export declare class TestingItToHaveBeenCalled<Descriptions extends string = string, Expectations extends string = string> extends TestingCore<Descriptions, Expectations> {
    before<T extends jasmine.Func>(spyExpected: () => [ExpectType<T>, jasmine.Func], expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    called<T extends jasmine.Func>(spy: () => ExpectType<T> | ExpectType<T>[], expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    onceWith<T extends jasmine.Func>(expectation: string | undefined, spy: () => ExpectType<T>, ...params: any[]): this;
    times<T extends jasmine.Func>(spy: () => ExpectType<T>, expected: number, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    with<T extends jasmine.Func>(expectation: string | undefined, spy: () => ExpectType<T>, ...params: any[]): this;
}
