import { TestingCore } from '../testing-core.abstract';
import { TestingDescribe } from '../testing-describe.class';
import { TestingExpectation } from '../testing-expectation.class';
import { TestingIt } from '../testing-it.class';
import { TestingItToBe } from '../it';
import { CounterConfig, ExpectType } from '../../type';
import { ExecutableTests } from '../../interface/executable-tests.interface';
export declare class TestingToBeObject<Descriptions extends string = string, Expectations extends string = string> extends TestingCore<Descriptions, Expectations> {
    protected toBe: TestingItToBe;
    constructor(allowDescribe?: boolean, allowIt?: boolean, executable?: ExecutableTests, counter?: CounterConfig, testingDescribe?: TestingDescribe, testingIt?: TestingIt, testingExpectation?: TestingExpectation);
    toBeObject<T>(actual: ExpectType<T>, expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    toBeObjectKey<T>(actual: ExpectType<T>, key: PropertyKey, expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    toBeObjectKeyIn<T>(actual: ExpectType<T>, key: PropertyKey, expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    toBeObjectKeys<T>(actual: ExpectType<T>, keys: PropertyKey[], expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    toBeObjectKeysIn<T>(actual: ExpectType<T>, keys: PropertyKey[], expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
    toBeObjectSomeKeys<T>(actual: ExpectType<T>, keys: PropertyKey[], expected?: jasmine.Expected<boolean>, expectation?: string, expectationFailOutput?: any, execute?: boolean): this;
}
