import { HvigorNode } from '@ohos/hvigor';
import { OhosModuleContext, Target } from '@ohos/hvigor-ohos-plugin/src/plugin/context/plugin-context';
export interface BaseAnalyzeResult {
    name: string;
    annotation: string;
    sourceFilePath: string;
}
export interface BaseExtensionContext {
    readonly node: HvigorNode;
    readonly moduleContext: OhosModuleContext;
    readonly currentView: ReadonlyArray<BaseAnalyzeResult>;
    currentTarget?: Target;
    moduleIgnored?: boolean;
    scanFiles: string[];
}
export interface ExtensionContext extends BaseExtensionContext {
    getAnalyzeResults<T extends BaseAnalyzeResult = BaseAnalyzeResult>(): Set<T>;
    addAnalyzeResults(results: BaseAnalyzeResult | BaseAnalyzeResult[]): void;
    getTemplateData(componentName: string): Record<string, any> | undefined;
    getTemplateDataMap(): Map<string, Record<string, any>>;
    addTemplateData(componentName: string, data: Record<string, any>): void;
    setCurrentFilePath(filePath: string): void;
}
