UNPKG

@bridgesplit/rwa-token-sdk

Version:

RWA Token SDK for the development of permissioned tokens on SVM blockchains.

588 lines (587 loc) 17.1 kB
/** * Program IDL in camelCase format in order to be used in JS/TS. * * Note that this is only a type helper and is not the actual IDL. The original * IDL can be found at `target/idl/identity_registry.json`. */ export type IdentityRegistry = { "address": "idtynCMYbdisCTv4FrCWPSQboZb1uM4TV2cPi79yxQf"; "metadata": { "name": "identityRegistry"; "version": "0.0.1"; "spec": "0.1.0"; "description": "The Identity Registry Program (IRP) manages the configurable issuance and tracking of on-chain identities to enable on-chain transaction permissioning."; "repository": "https://github.com/bridgesplit/rwa"; }; "instructions": [ { "name": "addLevelToIdentityAccount"; "docs": [ "add level to identity account" ]; "discriminator": [ 102, 204, 64, 169, 252, 177, 192, 232 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "identityRegistry"; }, { "name": "identityAccount"; "writable": true; "pda": { "seeds": [ { "kind": "account"; "path": "identityRegistry"; }, { "kind": "account"; "path": "identity_account.owner"; "account": "identityAccount"; } ]; }; }, { "name": "identityMetadataAccount"; "writable": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "level"; "type": "u8"; } ]; }, { "name": "createIdentityAccount"; "docs": [ "identity functions", "create identity account" ]; "discriminator": [ 82, 240, 35, 129, 113, 134, 116, 70 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "identityRegistry"; }, { "name": "identityAccount"; "writable": true; "pda": { "seeds": [ { "kind": "account"; "path": "identityRegistry"; }, { "kind": "arg"; "path": "owner"; } ]; }; }, { "name": "identityMetadataAccount"; "writable": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "owner"; "type": "pubkey"; }, { "name": "level"; "type": "u8"; } ]; }, { "name": "createIdentityRegistry"; "docs": [ "registry functions", "create identity registry" ]; "discriminator": [ 180, 3, 39, 22, 183, 212, 39, 209 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "assetMint"; }, { "name": "identityRegistryAccount"; "writable": true; "pda": { "seeds": [ { "kind": "account"; "path": "assetMint"; } ]; }; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "authority"; "type": "pubkey"; }, { "name": "delegate"; "type": { "option": "pubkey"; }; } ]; }, { "name": "delegateIdentityRegsitry"; "docs": [ "delegate identity registry" ]; "discriminator": [ 29, 162, 167, 70, 52, 79, 50, 65 ]; "accounts": [ { "name": "authority"; "signer": true; }, { "name": "identityRegistryAccount"; "writable": true; } ]; "args": [ { "name": "delegate"; "type": "pubkey"; } ]; }, { "name": "editIdentityMetdata"; "docs": [ "edit identity metadata" ]; "discriminator": [ 140, 213, 200, 29, 44, 134, 114, 206 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "identityRegistry"; }, { "name": "identityMetadataAccount"; "writable": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "level"; "type": "u8"; }, { "name": "maxAllowed"; "type": { "option": "u64"; }; } ]; }, { "name": "removeLevelFromIdentityAccount"; "docs": [ "remove level from identity account" ]; "discriminator": [ 194, 231, 187, 54, 197, 136, 170, 55 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "identityRegistry"; }, { "name": "identityAccount"; "writable": true; "pda": { "seeds": [ { "kind": "account"; "path": "identityRegistry"; }, { "kind": "account"; "path": "identity_account.owner"; "account": "identityAccount"; } ]; }; }, { "name": "identityMetadataAccount"; "writable": true; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; } ]; "args": [ { "name": "level"; "type": "u8"; } ]; }, { "name": "revokeIdentityAccount"; "docs": [ "revoke user identity account by closing account" ]; "discriminator": [ 77, 88, 182, 61, 235, 49, 2, 137 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "signer"; "signer": true; }, { "name": "identityRegistry"; "pda": { "seeds": [ { "kind": "account"; "path": "identity_registry.asset_mint"; "account": "identityRegistryAccount"; } ]; }; }, { "name": "identityAccount"; "writable": true; "pda": { "seeds": [ { "kind": "account"; "path": "identityRegistry"; }, { "kind": "account"; "path": "identity_account.owner"; "account": "identityAccount"; } ]; }; } ]; "args": [ { "name": "owner"; "type": "pubkey"; } ]; } ]; "accounts": [ { "name": "identityAccount"; "discriminator": [ 194, 90, 181, 160, 182, 206, 116, 158 ]; }, { "name": "identityMetadataAccount"; "discriminator": [ 170, 131, 34, 74, 232, 122, 201, 9 ]; }, { "name": "identityRegistryAccount"; "discriminator": [ 154, 254, 118, 4, 115, 36, 125, 78 ]; } ]; "errors": [ { "code": 6000; "name": "levelAlreadyPresent"; "msg": "Identity level has already been attached to user"; }, { "code": 6001; "name": "maxLevelsExceeded"; "msg": "Number of levels that can be attached to user has been exceeded"; }, { "code": 6002; "name": "levelNotFound"; "msg": "Level to be removed not found"; }, { "code": 6003; "name": "unauthorizedSigner"; "msg": "Unauthorized signer"; }, { "code": 6004; "name": "limitReached"; "msg": "Identity limit reached"; } ]; "types": [ { "name": "identityAccount"; "type": { "kind": "struct"; "fields": [ { "name": "version"; "docs": [ "version of the account" ]; "type": "u8"; }, { "name": "identityRegistry"; "docs": [ "identity registry to which the account belongs" ]; "type": "pubkey"; }, { "name": "owner"; "docs": [ "owner of the identity account" ]; "type": "pubkey"; }, { "name": "levels"; "type": "bytes"; } ]; }; }, { "name": "identityMetadataAccount"; "type": { "kind": "struct"; "fields": [ { "name": "version"; "docs": [ "version of the account" ]; "type": "u8"; }, { "name": "identityRegistry"; "docs": [ "identity registry to which the account belongs" ]; "type": "pubkey"; }, { "name": "level"; "docs": [ "identity level" ]; "type": "u8"; }, { "name": "currentUsers"; "docs": [ "current number of users" ]; "type": "u64"; }, { "name": "maxUsers"; "docs": [ "max number of users" ]; "type": "u64"; } ]; }; }, { "name": "identityRegistryAccount"; "type": { "kind": "struct"; "fields": [ { "name": "version"; "type": "u8"; }, { "name": "assetMint"; "docs": [ "corresponding asset mint" ]; "type": "pubkey"; }, { "name": "authority"; "docs": [ "authority to manage the registry" ]; "type": "pubkey"; }, { "name": "delegate"; "docs": [ "registry delegate" ]; "type": "pubkey"; } ]; }; } ]; };