@kagamidigital/salt-sdk-mirror
    Preparing search index...

    Type Alias SignMessageCeremonyEvents

    Lifecycle events emitted by a SignMessageHostCeremony. Mirrors TransactionCeremonyEvents: subscribe with .on() before calling wait() to drive a "what's happening now" / "who's signing" status UI.

    type SignMessageCeremonyEvents = {
        presence: (
            event: {
                joined: number;
                sessionId: string;
                signers: SignerStatus[];
                total: number;
            },
        ) => void;
        stateChanged: (event: { stage: SignMessageStage }) => void;
    }
    Index

    Properties

    presence: (
        event: {
            joined: number;
            sessionId: string;
            signers: SignerStatus[];
            total: number;
        },
    ) => void

    Fires on every change to the signing huddle's membership — each co-signer joining or leaving the MPC session. Drives a live "who's signing" view.

    signers is the set this ceremony actually engages: the hosting signer plus the peers it nudges (the account's robos by default, or an explicit peerOverride). This is exactly the threshold of parties needed to sign — the account's other signers are not invited to this ceremony and so are deliberately not listed. total is therefore this ceremony's expected signer count, not the account's full signer count.

    ceremony.on('presence', ({ joined, total, signers }) => {
    console.log(`${joined} of ${total} signers present`);
    signers.forEach((s) => console.log(s.address, s.isOnline));
    });
    stateChanged: (event: { stage: SignMessageStage }) => void

    Fires on each transition through the signing lifecycle, ending with a terminal success or failure stage.

    const ceremony = await salt.signPersonalMessage({
    accountId: account.id,
    signer,
    message: 'challenge',
    });
    ceremony.on('stateChanged', ({ stage }) => console.log('now', stage));
    const { signature } = await ceremony.wait();