using System.Threading; using System.Threading.Tasks; using StellaOps.Cli.Services.Models; namespace StellaOps.Cli.Services; /// /// Assembler for promotion attestations. /// Per CLI-PROMO-70-001/002. /// internal interface IPromotionAssembler { /// /// Assembles a promotion attestation from the provided request. /// Task AssembleAsync( PromotionAssembleRequest request, CancellationToken cancellationToken); /// /// Resolves image digest from registry. /// Task ResolveImageDigestAsync( string imageRef, CancellationToken cancellationToken); /// /// Signs a promotion predicate and produces a DSSE bundle. /// Per CLI-PROMO-70-002. /// Task AttestAsync( PromotionAttestRequest request, CancellationToken cancellationToken); /// /// Verifies a promotion attestation bundle offline. /// Per CLI-PROMO-70-002. /// Task VerifyAsync( PromotionVerifyRequest request, CancellationToken cancellationToken); }