import { type DomainEntity } from 'domain-objects'; import type { ContextLogTrail } from 'sdk-logs'; import type { ContextDeclastruct } from '../../domain.objects/ContextDeclastruct'; import type { ContextDeclastructCli } from '../../domain.objects/ContextDeclastructCli'; import { type DeclastructChange } from '../../domain.objects/DeclastructChange'; import type { DeclastructPlan } from '../../domain.objects/DeclastructPlan'; import type { DeclastructProvider } from '../../domain.objects/DeclastructProvider'; /** * .what = applies changes to achieve desired state * .why = executes infrastructure changes in a controlled, observable manner * .note = idempotent - reapplying same plan is safe (guards check if already applied) * - when plan is provided, validates staleness before applying * - when plan is null (yolo mode), skips validation and applies immediately */ export declare const applyChanges: (input: { plan: DeclastructPlan | null; resources: DomainEntity[]; providers: DeclastructProvider[]; }, context: ContextLogTrail & ContextDeclastruct & ContextDeclastructCli) => Promise<{ appliedChanges: DeclastructChange[]; }>;