import type { Action, ActionIdentifier, ExecutedAction, ResolvedAction, StatusOnlyAction } from "@garden-io/grow-sdk/actions/action"; import type { DeclaredAction } from "@garden-io/grow-sdk/declarations/action"; import type { ActionType } from "@garden-io/grow-sdk/declarations/action-type"; import type { ActionReference, DeepMaybeReference, Reference } from "@garden-io/grow-sdk/declarations/references"; /** * Find all references for validation. Builtin recursion detection. */ export declare function findAllReferences(declaration: DeepMaybeReference> | DeclaredAction | unknown, stack?: unknown[], path?: (string | number)[]): Generator<{ type: "action"; action: DeclaredAction; path: (string | number)[]; } | { type: "action-ref"; action: ActionIdentifier; path: (string | number)[]; } | { type: "ref"; ref: Reference; path: (string | number)[]; } | { type: "recursion"; path: (string | number)[]; }, undefined, undefined>; /** * This function assumes that the value is not cyclical / recursive (=has already been validated). */ export declare function collectReferences(value: DeepMaybeReference>): Generator>; type ResolveOutput = unknown; type ResolveInput = unknown; export declare function resolveReferences({ value, unresolvedActions, resolvedActions, statusOnlyActions, executedActions, resolvedInputs, }: { value: ResolveInput; unresolvedActions: { [key: string]: Action; }; resolvedActions: { [key: string]: ResolvedAction; }; statusOnlyActions: { [key: string]: StatusOnlyAction; }; executedActions: { [key: string]: ExecutedAction; }; resolvedInputs: object; }): ResolveOutput; export {};