import { type BedrockMemorySnapshot, type BedrockTargetKind } from '../../../../../packages/core/src/domain/generated/output.js';
export type BedrockActionResult = {
    ok: true;
} | {
    ok: false;
    code: string;
    remediation: string;
};
export type BedrockLifecycleResult = {
    ok: true;
    stdout: string;
} | {
    ok: false;
    code: string;
    remediation: string;
};
export declare function enableBedrockForTarget(kind: BedrockTargetKind, id: string): Promise<BedrockActionResult>;
/**
 * Runs a bedrock lifecycle command against a target.
 *
 * For an `Application` target we dispatch through the existing
 * RunBedrockLifecycleUseCase. For `Repository` and `Feature` targets
 * the lifecycle runner is not yet wired through their respective
 * persistence guards, so we return a typed unsupported-result that the
 * panel surfaces with a clear remediation. This keeps the UI surface
 * complete for all three kinds while contained M-sized scope.
 */
export declare function syncBedrockForTarget(kind: BedrockTargetKind, id: string): Promise<BedrockLifecycleResult>;
export declare function shipBedrockForTarget(kind: BedrockTargetKind, id: string): Promise<BedrockLifecycleResult>;
export declare function getBedrockMemorySnapshot(kind: BedrockTargetKind, id: string): Promise<BedrockMemorySnapshot | null>;
//# sourceMappingURL=bedrock.action.d.ts.map