UNPKG

@wormhole-foundation/sdk-solana-cctp

Version:

SDK for Solana, used in conjunction with @wormhole-foundation/sdk

1,371 lines 37.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MessageTransmitterIdl = void 0; exports.MessageTransmitterIdl = { version: '0.1.0', name: 'message_transmitter', instructions: [ { name: 'initialize', accounts: [ { name: 'payer', isMut: true, isSigner: true, }, { name: 'upgradeAuthority', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'messageTransmitterProgramData', isMut: false, isSigner: false, }, { name: 'messageTransmitterProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'InitializeParams', }, }, ], }, { name: 'transferOwnership', accounts: [ { name: 'owner', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'TransferOwnershipParams', }, }, ], }, { name: 'acceptOwnership', accounts: [ { name: 'pendingOwner', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'AcceptOwnershipParams', }, }, ], }, { name: 'updatePauser', accounts: [ { name: 'owner', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'UpdatePauserParams', }, }, ], }, { name: 'updateAttesterManager', accounts: [ { name: 'owner', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'UpdateAttesterManagerParams', }, }, ], }, { name: 'pause', accounts: [ { name: 'pauser', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'PauseParams', }, }, ], }, { name: 'unpause', accounts: [ { name: 'pauser', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'UnpauseParams', }, }, ], }, { name: 'setMaxMessageBodySize', accounts: [ { name: 'owner', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'SetMaxMessageBodySizeParams', }, }, ], }, { name: 'enableAttester', accounts: [ { name: 'payer', isMut: true, isSigner: true, }, { name: 'attesterManager', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'EnableAttesterParams', }, }, ], }, { name: 'disableAttester', accounts: [ { name: 'payer', isMut: true, isSigner: true, }, { name: 'attesterManager', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'DisableAttesterParams', }, }, ], }, { name: 'setSignatureThreshold', accounts: [ { name: 'attesterManager', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'SetSignatureThresholdParams', }, }, ], }, { name: 'sendMessage', accounts: [ { name: 'eventRentPayer', isMut: true, isSigner: true, }, { name: 'senderAuthorityPda', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'messageSentEventData', isMut: true, isSigner: true, }, { name: 'senderProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'SendMessageParams', }, }, ], returns: 'u64', }, { name: 'sendMessageWithCaller', accounts: [ { name: 'eventRentPayer', isMut: true, isSigner: true, }, { name: 'senderAuthorityPda', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'messageSentEventData', isMut: true, isSigner: true, }, { name: 'senderProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'SendMessageWithCallerParams', }, }, ], returns: 'u64', }, { name: 'replaceMessage', accounts: [ { name: 'eventRentPayer', isMut: true, isSigner: true, }, { name: 'senderAuthorityPda', isMut: false, isSigner: true, }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'messageSentEventData', isMut: true, isSigner: true, }, { name: 'senderProgram', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'ReplaceMessageParams', }, }, ], returns: 'u64', }, { name: 'receiveMessage', accounts: [ { name: 'payer', isMut: true, isSigner: true, }, { name: 'caller', isMut: false, isSigner: true, }, { name: 'authorityPda', isMut: false, isSigner: false, }, { name: 'messageTransmitter', isMut: false, isSigner: false, }, { name: 'usedNonces', isMut: true, isSigner: false, }, { name: 'receiver', isMut: false, isSigner: false, }, { name: 'systemProgram', isMut: false, isSigner: false, }, { name: 'eventAuthority', isMut: false, isSigner: false, }, { name: 'program', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'ReceiveMessageParams', }, }, ], }, { name: 'reclaimEventAccount', accounts: [ { name: 'payee', isMut: true, isSigner: true, docs: ['rent SOL receiver, should match original rent payer'], }, { name: 'messageTransmitter', isMut: true, isSigner: false, }, { name: 'messageSentEventData', isMut: true, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'ReclaimEventAccountParams', }, }, ], }, { name: 'getNoncePda', accounts: [ { name: 'messageTransmitter', isMut: false, isSigner: false, }, ], args: [ { name: 'params', type: { defined: 'GetNoncePDAParams', }, }, ], returns: 'publicKey', }, { name: 'isNonceUsed', accounts: [ { name: 'usedNonces', isMut: false, isSigner: false, docs: [ "Account will be explicitly loaded to avoid error when it's not initialized", ], }, ], args: [ { name: 'params', type: { defined: 'IsNonceUsedParams', }, }, ], returns: 'bool', }, ], accounts: [ { name: 'messageSent', type: { kind: 'struct', fields: [ { name: 'rentPayer', type: 'publicKey', }, { name: 'message', type: 'bytes', }, ], }, }, { name: 'messageTransmitter', docs: ['Main state of the MessageTransmitter program'], type: { kind: 'struct', fields: [ { name: 'owner', type: 'publicKey', }, { name: 'pendingOwner', type: 'publicKey', }, { name: 'attesterManager', type: 'publicKey', }, { name: 'pauser', type: 'publicKey', }, { name: 'paused', type: 'bool', }, { name: 'localDomain', type: 'u32', }, { name: 'version', type: 'u32', }, { name: 'signatureThreshold', type: 'u32', }, { name: 'enabledAttesters', type: { vec: 'publicKey', }, }, { name: 'maxMessageBodySize', type: 'u64', }, { name: 'nextAvailableNonce', type: 'u64', }, ], }, }, { name: 'usedNonces', docs: [ 'UsedNonces account holds an array of bits that indicate which nonces were already used', "so they can't be resused to receive new messages. Array starts with the first_nonce and", 'holds flags for UsedNonces::MAX_NONCES. Nonces are recorded separately for each remote_domain.', ], type: { kind: 'struct', fields: [ { name: 'remoteDomain', type: 'u32', }, { name: 'firstNonce', type: 'u64', }, { name: 'usedNonces', type: { array: ['u64', 100], }, }, ], }, }, ], types: [ { name: 'AcceptOwnershipParams', type: { kind: 'struct', fields: [], }, }, { name: 'DisableAttesterParams', type: { kind: 'struct', fields: [ { name: 'attester', type: 'publicKey', }, ], }, }, { name: 'EnableAttesterParams', type: { kind: 'struct', fields: [ { name: 'newAttester', type: 'publicKey', }, ], }, }, { name: 'GetNoncePDAParams', type: { kind: 'struct', fields: [ { name: 'nonce', type: 'u64', }, { name: 'sourceDomain', type: 'u32', }, ], }, }, { name: 'InitializeParams', type: { kind: 'struct', fields: [ { name: 'localDomain', type: 'u32', }, { name: 'attester', type: 'publicKey', }, { name: 'maxMessageBodySize', type: 'u64', }, { name: 'version', type: 'u32', }, ], }, }, { name: 'IsNonceUsedParams', type: { kind: 'struct', fields: [ { name: 'nonce', type: 'u64', }, ], }, }, { name: 'PauseParams', type: { kind: 'struct', fields: [], }, }, { name: 'ReceiveMessageParams', type: { kind: 'struct', fields: [ { name: 'message', type: 'bytes', }, { name: 'attestation', type: 'bytes', }, ], }, }, { name: 'HandleReceiveMessageParams', type: { kind: 'struct', fields: [ { name: 'remoteDomain', type: 'u32', }, { name: 'sender', type: 'publicKey', }, { name: 'messageBody', type: 'bytes', }, { name: 'authorityBump', type: 'u8', }, ], }, }, { name: 'ReclaimEventAccountParams', type: { kind: 'struct', fields: [ { name: 'attestation', type: 'bytes', }, ], }, }, { name: 'ReplaceMessageParams', type: { kind: 'struct', fields: [ { name: 'originalMessage', type: 'bytes', }, { name: 'originalAttestation', type: 'bytes', }, { name: 'newMessageBody', type: 'bytes', }, { name: 'newDestinationCaller', type: 'publicKey', }, ], }, }, { name: 'SendMessageWithCallerParams', type: { kind: 'struct', fields: [ { name: 'destinationDomain', type: 'u32', }, { name: 'recipient', type: 'publicKey', }, { name: 'messageBody', type: 'bytes', }, { name: 'destinationCaller', type: 'publicKey', }, ], }, }, { name: 'SendMessageParams', type: { kind: 'struct', fields: [ { name: 'destinationDomain', type: 'u32', }, { name: 'recipient', type: 'publicKey', }, { name: 'messageBody', type: 'bytes', }, ], }, }, { name: 'SetMaxMessageBodySizeParams', type: { kind: 'struct', fields: [ { name: 'newMaxMessageBodySize', type: 'u64', }, ], }, }, { name: 'SetSignatureThresholdParams', type: { kind: 'struct', fields: [ { name: 'newSignatureThreshold', type: 'u32', }, ], }, }, { name: 'TransferOwnershipParams', type: { kind: 'struct', fields: [ { name: 'newOwner', type: 'publicKey', }, ], }, }, { name: 'UnpauseParams', type: { kind: 'struct', fields: [], }, }, { name: 'UpdateAttesterManagerParams', type: { kind: 'struct', fields: [ { name: 'newAttesterManager', type: 'publicKey', }, ], }, }, { name: 'UpdatePauserParams', type: { kind: 'struct', fields: [ { name: 'newPauser', type: 'publicKey', }, ], }, }, { name: 'MathError', type: { kind: 'enum', variants: [ { name: 'MathOverflow', }, { name: 'MathUnderflow', }, { name: 'ErrorInDivision', }, ], }, }, ], events: [ { name: 'OwnershipTransferStarted', fields: [ { name: 'previousOwner', type: 'publicKey', index: false, }, { name: 'newOwner', type: 'publicKey', index: false, }, ], }, { name: 'OwnershipTransferred', fields: [ { name: 'previousOwner', type: 'publicKey', index: false, }, { name: 'newOwner', type: 'publicKey', index: false, }, ], }, { name: 'PauserChanged', fields: [ { name: 'newAddress', type: 'publicKey', index: false, }, ], }, { name: 'AttesterManagerUpdated', fields: [ { name: 'previousAttesterManager', type: 'publicKey', index: false, }, { name: 'newAttesterManager', type: 'publicKey', index: false, }, ], }, { name: 'MessageReceived', fields: [ { name: 'caller', type: 'publicKey', index: false, }, { name: 'sourceDomain', type: 'u32', index: false, }, { name: 'nonce', type: 'u64', index: false, }, { name: 'sender', type: 'publicKey', index: false, }, { name: 'messageBody', type: 'bytes', index: false, }, ], }, { name: 'SignatureThresholdUpdated', fields: [ { name: 'oldSignatureThreshold', type: 'u32', index: false, }, { name: 'newSignatureThreshold', type: 'u32', index: false, }, ], }, { name: 'AttesterEnabled', fields: [ { name: 'attester', type: 'publicKey', index: false, }, ], }, { name: 'AttesterDisabled', fields: [ { name: 'attester', type: 'publicKey', index: false, }, ], }, { name: 'MaxMessageBodySizeUpdated', fields: [ { name: 'newMaxMessageBodySize', type: 'u64', index: false, }, ], }, { name: 'Pause', fields: [], }, { name: 'Unpause', fields: [], }, ], errors: [ { code: 6000, name: 'InvalidAuthority', msg: 'Invalid authority', }, { code: 6001, name: 'ProgramPaused', msg: 'Instruction is not allowed at this time', }, { code: 6002, name: 'InvalidMessageTransmitterState', msg: 'Invalid message transmitter state', }, { code: 6003, name: 'InvalidSignatureThreshold', msg: 'Invalid signature threshold', }, { code: 6004, name: 'SignatureThresholdAlreadySet', msg: 'Signature threshold already set', }, { code: 6005, name: 'InvalidOwner', msg: 'Invalid owner', }, { code: 6006, name: 'InvalidPauser', msg: 'Invalid pauser', }, { code: 6007, name: 'InvalidAttesterManager', msg: 'Invalid attester manager', }, { code: 6008, name: 'InvalidAttester', msg: 'Invalid attester', }, { code: 6009, name: 'AttesterAlreadyEnabled', msg: 'Attester already enabled', }, { code: 6010, name: 'TooFewEnabledAttesters', msg: 'Too few enabled attesters', }, { code: 6011, name: 'SignatureThresholdTooLow', msg: 'Signature threshold is too low', }, { code: 6012, name: 'AttesterAlreadyDisabled', msg: 'Attester already disabled', }, { code: 6013, name: 'MessageBodyLimitExceeded', msg: 'Message body exceeds max size', }, { code: 6014, name: 'InvalidDestinationCaller', msg: 'Invalid destination caller', }, { code: 6015, name: 'InvalidRecipient', msg: 'Invalid message recipient', }, { code: 6016, name: 'SenderNotPermitted', msg: 'Sender is not permitted', }, { code: 6017, name: 'InvalidSourceDomain', msg: 'Invalid source domain', }, { code: 6018, name: 'InvalidDestinationDomain', msg: 'Invalid destination domain', }, { code: 6019, name: 'InvalidMessageVersion', msg: 'Invalid message version', }, { code: 6020, name: 'InvalidUsedNoncesAccount', msg: 'Invalid used nonces account', }, { code: 6021, name: 'InvalidRecipientProgram', msg: 'Invalid recipient program', }, { code: 6022, name: 'InvalidNonce', msg: 'Invalid nonce', }, { code: 6023, name: 'NonceAlreadyUsed', msg: 'Nonce already used', }, { code: 6024, name: 'MessageTooShort', msg: 'Message is too short', }, { code: 6025, name: 'MalformedMessage', msg: 'Malformed message', }, { code: 6026, name: 'InvalidSignatureOrderOrDupe', msg: 'Invalid signature order or dupe', }, { code: 6027, name: 'InvalidAttesterSignature', msg: 'Invalid attester signature', }, { code: 6028, name: 'InvalidAttestationLength', msg: 'Invalid attestation length', }, { code: 6029, name: 'InvalidSignatureRecoveryId', msg: 'Invalid signature recovery ID', }, { code: 6030, name: 'InvalidSignatureSValue', msg: 'Invalid signature S value', }, { code: 6031, name: 'InvalidMessageHash', msg: 'Invalid message hash', }, ], }; //# sourceMappingURL=messageTransmitter.js.map