Interface SealInput

Everything seal needs, in one object (issue #3: seal and open share the same shape style).

interface SealInput {
    circuitId: string;
    contentType?: string;
    dfid: string;
    fieldPath: string;
    includeSelf?: boolean;
    to?: SealRecipientInput[];
    value: unknown;
    visibility?: "public" | "private";
}

Properties

circuitId: string

The circuit the event is written into (the integrator's domain knowledge).

contentType?: string

Declared content type. Default: text/plain for strings, application/json otherwise.

dfid: string

The item's DFID.

fieldPath: string

The field to seal (e.g. preco_venda).

includeSelf?: boolean

Wrap for your own key too, so you never lose access to your own data. Default true; opt-out is explicit.

Who can open. Default: nobody but yourself (sealed-private).

value: unknown

The value — a string is sealed as text/plain, anything else as JSON.

visibility?: "public" | "private"

Event visibility. Default private (safe default for sensitive data). public makes the ENVELOPE (commitment, not the value) surface on the public /verify page.