UNPKG

@dstoken-solana/rwa-token-sdk

Version:

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

1,416 lines 43.5 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": "GZsnjqT3c5zbHqsctrJ4EG4rbEfo7ZXyyUG7aDJNmxfA"; "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": "systemProgram"; "address": "11111111111111111111111111111111"; }, { "name": "policyEngineProgram"; "address": "FsE8mCJyvgMzqJbfHbJQm3iuf3cRZC6n2vZi1Q8rQCy2"; }, { "name": "policyEngine"; "writable": true; }, { "name": "trackerAccount"; }, { "name": "assetMint"; "relations": [ "identityRegistry" ]; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "levels"; "type": "bytes"; }, { "name": "expiries"; "type": { "vec": "i64"; }; }, { "name": "enforceLimits"; "type": "bool"; } ]; }, { "name": "attachWalletToIdentity"; "docs": [ "attach token account to identity account" ]; "discriminator": [ 61, 129, 252, 190, 8, 202, 179, 90 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "authority"; "signer": true; }, { "name": "identityAccount"; "writable": true; }, { "name": "identityRegistry"; "relations": [ "identityAccount" ]; }, { "name": "assetMint"; "relations": [ "identityRegistry" ]; }, { "name": "walletIdentity"; "writable": true; "pda": { "seeds": [ { "kind": "arg"; "path": "wallet"; }, { "kind": "account"; "path": "assetMint"; } ]; }; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "wallet"; "type": "pubkey"; } ]; }, { "name": "changeCountry"; "discriminator": [ 208, 227, 224, 246, 9, 254, 62, 179 ]; "accounts": [ { "name": "payer"; "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": "policyEngineProgram"; "address": "FsE8mCJyvgMzqJbfHbJQm3iuf3cRZC6n2vZi1Q8rQCy2"; }, { "name": "policyEngine"; "writable": true; }, { "name": "trackerAccount"; }, { "name": "assetMint"; "relations": [ "identityRegistry" ]; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "newCountry"; "type": "u8"; }, { "name": "enforceLimits"; "type": "bool"; } ]; }, { "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": "walletIdentity"; "writable": true; "pda": { "seeds": [ { "kind": "arg"; "path": "owner"; }, { "kind": "account"; "path": "identity_registry.asset_mint"; "account": "identityRegistryAccount"; } ]; }; }, { "name": "policyEngineProgram"; "address": "FsE8mCJyvgMzqJbfHbJQm3iuf3cRZC6n2vZi1Q8rQCy2"; }, { "name": "trackerAccount"; "writable": true; }, { "name": "assetMint"; }, { "name": "systemProgram"; "address": "11111111111111111111111111111111"; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "owner"; "type": "pubkey"; }, { "name": "level"; "type": "u8"; }, { "name": "expiry"; "type": "i64"; }, { "name": "country"; "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": "detachWalletFromIdentity"; "docs": [ "detach token account from identity account" ]; "discriminator": [ 166, 70, 236, 254, 166, 116, 201, 50 ]; "accounts": [ { "name": "payer"; "writable": true; "signer": true; }, { "name": "authority"; "writable": true; "signer": true; }, { "name": "walletIdentity"; "writable": true; }, { "name": "identityAccount"; "writable": true; "relations": [ "walletIdentity" ]; }, { "name": "identityRegistry"; "relations": [ "identityAccount" ]; }, { "name": "tokenAccount"; "pda": { "seeds": [ { "kind": "account"; "path": "wallet_identity.wallet"; "account": "walletIdentity"; }, { "kind": "const"; "value": [ 6, 221, 246, 225, 238, 117, 143, 222, 24, 66, 93, 188, 228, 108, 205, 218, 182, 26, 252, 77, 131, 185, 13, 39, 254, 189, 249, 40, 216, 161, 139, 252 ]; }, { "kind": "account"; "path": "assetMint"; } ]; "program": { "kind": "const"; "value": [ 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, 219, 233, 248, 89 ]; }; }; }, { "name": "assetMint"; "relations": [ "identityRegistry" ]; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": []; }, { "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": "systemProgram"; "address": "11111111111111111111111111111111"; }, { "name": "policyEngineProgram"; "address": "FsE8mCJyvgMzqJbfHbJQm3iuf3cRZC6n2vZi1Q8rQCy2"; }, { "name": "policyEngine"; "writable": true; }, { "name": "trackerAccount"; }, { "name": "assetMint"; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "levels"; "type": "bytes"; }, { "name": "enforceLimits"; "type": "bool"; } ]; }, { "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"; } ]; }; "relations": [ "walletIdentity" ]; }, { "name": "walletIdentity"; "writable": true; "pda": { "seeds": [ { "kind": "arg"; "path": "owner"; }, { "kind": "account"; "path": "identity_registry.asset_mint"; "account": "identityRegistryAccount"; } ]; }; }, { "name": "policyEngineProgram"; "address": "FsE8mCJyvgMzqJbfHbJQm3iuf3cRZC6n2vZi1Q8rQCy2"; }, { "name": "trackerAccount"; "writable": true; }, { "name": "assetMint"; }, { "name": "eventAuthority"; "pda": { "seeds": [ { "kind": "const"; "value": [ 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121 ]; } ]; }; }, { "name": "program"; } ]; "args": [ { "name": "owner"; "type": "pubkey"; } ]; } ]; "accounts": [ { "name": "identityAccount"; "discriminator": [ 194, 90, 181, 160, 182, 206, 116, 158 ]; }, { "name": "identityRegistryAccount"; "discriminator": [ 154, 254, 118, 4, 115, 36, 125, 78 ]; }, { "name": "walletIdentity"; "discriminator": [ 101, 142, 55, 104, 168, 77, 57, 85 ]; } ]; "events": [ { "name": "addLevelsToIdentityEvent"; "discriminator": [ 106, 66, 2, 157, 98, 27, 247, 14 ]; }, { "name": "attachWalletToIdentityEvent"; "discriminator": [ 16, 40, 24, 145, 131, 77, 48, 72 ]; }, { "name": "changeCountryEvent"; "discriminator": [ 157, 201, 26, 238, 229, 239, 123, 18 ]; }, { "name": "createdIdentityEvent"; "discriminator": [ 86, 208, 163, 74, 106, 170, 105, 5 ]; }, { "name": "detachWalletFromIdentityEvent"; "discriminator": [ 198, 117, 190, 61, 34, 148, 12, 148 ]; }, { "name": "removeLevelsFromIdentityEvent"; "discriminator": [ 41, 204, 239, 52, 86, 107, 45, 212 ]; }, { "name": "removedIdentityEvent"; "discriminator": [ 210, 181, 206, 189, 126, 87, 18, 55 ]; } ]; "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"; }, { "code": 6005; "name": "tokenAccountAlreadyInitialized"; "msg": "Token account is already initialized"; }, { "code": 6006; "name": "identityCreationRequired"; "msg": "Identity creation must be enforced for this feature"; }, { "code": 6007; "name": "multipleWalletsNotAllowed"; "msg": "Multiple wallets are not allowed"; }, { "code": 6008; "name": "walletAlreadyInUse"; "msg": "Wallet already in use"; }, { "code": 6009; "name": "invalidLevel"; "msg": "Invalid level"; }, { "code": 6010; "name": "tokenAccountNotEmpty"; "msg": "Token account is not empty"; } ]; "types": [ { "name": "addLevelsToIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "levels"; "type": "bytes"; }, { "name": "expiries"; "type": { "vec": "i64"; }; }, { "name": "sender"; "type": "pubkey"; } ]; }; }, { "name": "attachWalletToIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "wallet"; "type": "pubkey"; }, { "name": "sender"; "type": "pubkey"; } ]; }; }, { "name": "changeCountryEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "country"; "type": "u8"; }, { "name": "sender"; "type": "pubkey"; } ]; }; }, { "name": "createdIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "kind"; "type": "u8"; }, { "name": "sender"; "type": "pubkey"; }, { "name": "owner"; "type": "pubkey"; } ]; }; }, { "name": "detachWalletFromIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "wallet"; "type": "pubkey"; }, { "name": "sender"; "type": "pubkey"; } ]; }; }, { "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": "numWallets"; "docs": [ "number of wallets attached to this identity account" ]; "type": "u16"; }, { "name": "country"; "docs": [ "country code of the user" ]; "type": "u8"; }, { "name": "levels"; "type": { "vec": { "defined": { "name": "identityLevel"; }; }; }; } ]; }; }, { "name": "identityLevel"; "type": { "kind": "struct"; "fields": [ { "name": "level"; "type": "u8"; }, { "name": "expiry"; "type": "i64"; } ]; }; }, { "name": "identityRegistryAccount"; "type": { "kind": "struct"; "fields": [ { "name": "version"; "type": "u8"; }, { "name": "bump"; "type": "u8"; }, { "name": "assetMint"; "docs": [ "corresponding asset mint" ]; "type": "pubkey"; }, { "name": "authority"; "docs": [ "authority to manage the registry" ]; "type": "pubkey"; } ]; }; }, { "name": "removeLevelsFromIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "levels"; "type": "bytes"; }, { "name": "sender"; "type": "pubkey"; } ]; }; }, { "name": "removedIdentityEvent"; "type": { "kind": "struct"; "fields": [ { "name": "identity"; "type": "pubkey"; }, { "name": "mint"; "type": "pubkey"; }, { "name": "kind"; "type": "u8"; }, { "name": "sender"; "type": "pubkey"; }, { "name": "owner"; "type": "pubkey"; } ]; }; }, { "name": "walletIdentity"; "type": { "kind": "struct"; "fields": [ { "name": "identityAccount"; "type": "pubkey"; }, { "name": "wallet"; "type": "pubkey"; } ]; }; } ]; }; //# sourceMappingURL=IdentityRegistryTypes.d.ts.map