using StellaOps.Attestor.Envelope; namespace StellaOps.Scanner.Reachability.Witnesses; /// /// Service for creating and verifying DSSE-signed suppression witness envelopes. /// Sprint: SPRINT_20260106_001_002 (SUP-014) /// public interface ISuppressionDsseSigner { /// /// Signs a suppression witness and wraps it in a DSSE envelope. /// /// The suppression witness to sign. /// The key to sign with. /// Cancellation token. /// Result containing the signed DSSE envelope. SuppressionDsseResult SignWitness( SuppressionWitness witness, EnvelopeKey signingKey, CancellationToken cancellationToken = default); /// /// Verifies a DSSE-signed suppression witness envelope. /// /// The DSSE envelope to verify. /// The public key to verify with. /// Cancellation token. /// Result containing the verified witness. SuppressionVerifyResult VerifyWitness( DsseEnvelope envelope, EnvelopeKey publicKey, CancellationToken cancellationToken = default); }