import type { GlobalMetadata, DescribeBlockMetadata, HookDefinitionMetadata, HookInvocationMetadata, Metadata, MetadataChecker, TestFileMetadata, TestEntryMetadata, TestFnInvocationMetadata, TestInvocationMetadata } from '../metadata';
export declare abstract class MetadataVisitor {
    protected readonly checker: MetadataChecker;
    constructor(checker: MetadataChecker);
    visit(metadata: Metadata): void;
    protected abstract visitGlobal(metadata: GlobalMetadata): void;
    protected abstract visitTestFile(metadata: TestFileMetadata): void;
    protected abstract visitDescribeBlock(metadata: DescribeBlockMetadata): void;
    protected abstract visitHookDefinition(metadata: HookDefinitionMetadata): void;
    protected abstract visitTestEntry(metadata: TestEntryMetadata): void;
    protected abstract visitHookInvocation(metadata: HookInvocationMetadata): void;
    protected abstract visitTestInvocation(metadata: TestInvocationMetadata): void;
    protected abstract visitTestFnInvocation(metadata: TestFnInvocationMetadata): void;
}
