import { ActivityMethodMetadataResult, ActivityMetadataExtractionResult, ActivityClassValidationResult, MetadataValidationResult, ActivityInfoResult, CacheStatsResult, SignalMethodExtractionResult, QueryMethodExtractionResult, UpdateMethodExtractionResult, ChildWorkflowExtractionResult } from '../interfaces';
export declare class TemporalMetadataAccessor {
    private readonly logger;
    private readonly activityMethodCache;
    constructor();
    isActivity(target: Function): boolean;
    isActivityMethod(target: object | null | undefined | string, methodName?: string): boolean;
    getActivityMetadata(target: Function): unknown;
    getActivityMethodMetadata(instance: unknown, methodName: string): ActivityMethodMetadataResult | null;
    getActivityMethodNames(target: Function | null | undefined | string): string[];
    getActivityMethodName(target: object | null | undefined | string, methodName?: string): string | null;
    getActivityOptions(target: Function): Record<string, unknown> | null;
    extractActivityMethods(instance: unknown): ActivityMetadataExtractionResult;
    extractActivityMethodsFromClass(target: Function): Array<{
        methodName: string;
        name: string;
        metadata: {
            name: string;
            methodName: string;
            className: string;
            options?: Record<string, unknown>;
        };
    }>;
    extractMethodsFromPrototype(instance: unknown): ActivityMetadataExtractionResult;
    getActivityMethodOptions(target: unknown, methodName?: string): Record<string, unknown> | null;
    getSignalMethods(prototype: unknown): SignalMethodExtractionResult;
    getQueryMethods(prototype: unknown): QueryMethodExtractionResult;
    getUpdateMethods(prototype: unknown): UpdateMethodExtractionResult;
    getChildWorkflows(prototype: unknown): ChildWorkflowExtractionResult;
    validateActivityClass(constructor: Function): ActivityClassValidationResult;
    private hasActivityMethods;
    getAllMetadataKeys(target: unknown): string[];
    getActivityName(target: Function): string | null;
    getActivityInfo(target: Function | null | undefined | string): ActivityInfoResult;
    validateMetadata(target: unknown, expectedKeys: string[]): MetadataValidationResult;
    clearCache(): void;
    getCacheStats(): CacheStatsResult;
}
