import type { PluginContext } from "@garden-io/grow-sdk/plugins/plugin-context"; import type { PrimitiveMap } from "@garden-io/grow-sdk/util/types"; import type { TreeCache } from "./cache"; import type { CloudApi } from "./cloud/api"; import type { ConfigWrapper } from "./config/wrapper"; import { LocalConfigStore } from "./config-store/local"; import { EventBus } from "./events/events"; import type { ActionLog, Log } from "./logger/log-entry"; import type { CommandInfo } from "./plugin-context"; import type { VcsHandler } from "./vcs/vcs"; export interface GrowOpts { commandInfo?: CommandInfo; configWrapper?: ConfigWrapper; inputs?: PrimitiveMap; commandRunId?: string; cloudApi?: CloudApi; } export declare class GrowContext { readonly artifactsPath: string; readonly commandInfo?: CommandInfo; readonly configWrapper: ConfigWrapper; readonly events: EventBus; readonly growRoot: string; readonly localConfigStore: LocalConfigStore; readonly growMetadataDirPath: string; readonly sessionId: string; readonly inputs: PrimitiveMap; readonly vcs: VcsHandler; readonly commandRunId?: string; readonly cloudApi?: CloudApi; private asyncLock; private emittedWarnings; constructor(params: GrowOpts); get treeCache(): TreeCache; getPluginContext({ log }: { log: ActionLog; }): PluginContext; emitWarning({ key, log, message }: { key: string; log: Log; message: string; }): Promise; hideWarning(key: string): Promise; }