import type { GlobalMetadata, DescribeBlockMetadata, HookDefinitionMetadata, HookInvocationMetadata, Metadata, TestFileMetadata, TestEntryMetadata, TestFnInvocationMetadata, TestInvocationMetadata } from '../../metadata';
import { MetadataVisitor } from '../MetadataVisitor';
import { PlantLink } from './PlantLink';
import type { PlantObject } from './PlantObject';
export declare class PlantMetadataVisitor extends MetadataVisitor {
    protected readonly objects: PlantObject[];
    protected readonly links: PlantLink[];
    generatePlantUML(): string;
    visit(metadata: Metadata): void;
    protected visitGlobal(metadata: GlobalMetadata): void;
    protected visitDescribeBlock(metadata: DescribeBlockMetadata): void;
    protected visitHookDefinition(metadata: HookDefinitionMetadata): void;
    protected visitHookInvocation(_metadata: HookInvocationMetadata): void;
    protected visitTestFile(metadata: TestFileMetadata): void;
    protected visitTestEntry(metadata: TestEntryMetadata): void;
    protected visitTestFnInvocation(metadata: TestFnInvocationMetadata): void;
    protected visitTestInvocation(metadata: TestInvocationMetadata): void;
    private _registerLink;
}
