Type alias IdentityRegistryIdlTypes

IdentityRegistryIdlTypes: {
    accounts: [{
        discriminator: [194, 90, 181, 160, 182, 206, 116, 158];
        name: "identityAccount";
    }, {
        discriminator: [154, 254, 118, 4, 115, 36, 125, 78];
        name: "identityRegistryAccount";
    }];
    address: "idtynCMYbdisCTv4FrCWPSQboZb1uM4TV2cPi79yxQf";
    errors: [{
        code: 6000;
        msg: "Identity level has already been attached to user";
        name: "levelAlreadyPresent";
    }, {
        code: 6001;
        msg: "Number of levels that can be attached to user has been exceeded";
        name: "maxLevelsExceeded";
    }, {
        code: 6002;
        msg: "Level to be removed not found";
        name: "levelNotFound";
    }, {
        code: 6003;
        msg: "Unauthorized signer";
        name: "unauthorizedSigner";
    }];
    instructions: [{
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "level";
            type: "u8";
        }];
        discriminator: [102, 204, 64, 169, 252, 177, 192, 232];
        docs: ["add level to identity account"];
        name: "addLevelToIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    kind: "arg";
                    path: "owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }, {
            name: "level";
            type: "u8";
        }];
        discriminator: [82, 240, 35, 129, 113, 134, 116, 70];
        docs: ["identity functions", "create identity account"];
        name: "createIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "assetMint";
        }, {
            name: "identityRegistryAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "assetMint";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "authority";
            type: "pubkey";
        }, {
            name: "delegate";
            type: {
                option: "pubkey";
            };
        }];
        discriminator: [180, 3, 39, 22, 183, 212, 39, 209];
        docs: ["registry functions", "create identity registry"];
        name: "createIdentityRegistry";
    }, {
        accounts: [{
            name: "authority";
            signer: true;
        }, {
            name: "identityRegistryAccount";
            writable: true;
        }];
        args: [{
            name: "delegate";
            type: "pubkey";
        }];
        discriminator: [29, 162, 167, 70, 52, 79, 50, 65];
        docs: ["delegate identity registry"];
        name: "delegateIdentityRegsitry";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "level";
            type: "u8";
        }];
        discriminator: [194, 231, 187, 54, 197, 136, 170, 55];
        docs: ["remove level from identity account"];
        name: "removeLevelFromIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
            pda: {
                seeds: [{
                    account: "identityRegistryAccount";
                    kind: "account";
                    path: "identity_registry.asset_mint";
                }];
            };
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [77, 88, 182, 61, 235, 49, 2, 137];
        docs: ["revoke user identity account by closing account"];
        name: "revokeIdentityAccount";
    }];
    metadata: {
        description: "The Identity Registry Program (IRP) manages the configurable issuance and tracking of on-chain identities to enable on-chain transaction permissioning.";
        name: "identityRegistry";
        repository: "https://github.com/bridgesplit/rwa";
        spec: "0.1.0";
        version: "0.0.1";
    };
    types: [{
        name: "identityAccount";
        type: {
            fields: [{
                docs: ["version of the account"];
                name: "version";
                type: "u8";
            }, {
                docs: ["identity registry to which the account belongs"];
                name: "identityRegistry";
                type: "pubkey";
            }, {
                docs: ["owner of the identity account"];
                name: "owner";
                type: "pubkey";
            }, {
                name: "levels";
                type: "bytes";
            }];
            kind: "struct";
        };
    }, {
        name: "identityRegistryAccount";
        type: {
            fields: [{
                name: "version";
                type: "u8";
            }, {
                docs: ["corresponding asset mint"];
                name: "assetMint";
                type: "pubkey";
            }, {
                docs: ["authority to manage the registry"];
                name: "authority";
                type: "pubkey";
            }, {
                docs: ["registry delegate"];
                name: "delegate";
                type: "pubkey";
            }];
            kind: "struct";
        };
    }];
}

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.

Type declaration

  • accounts: [{
        discriminator: [194, 90, 181, 160, 182, 206, 116, 158];
        name: "identityAccount";
    }, {
        discriminator: [154, 254, 118, 4, 115, 36, 125, 78];
        name: "identityRegistryAccount";
    }]
  • address: "idtynCMYbdisCTv4FrCWPSQboZb1uM4TV2cPi79yxQf"
  • errors: [{
        code: 6000;
        msg: "Identity level has already been attached to user";
        name: "levelAlreadyPresent";
    }, {
        code: 6001;
        msg: "Number of levels that can be attached to user has been exceeded";
        name: "maxLevelsExceeded";
    }, {
        code: 6002;
        msg: "Level to be removed not found";
        name: "levelNotFound";
    }, {
        code: 6003;
        msg: "Unauthorized signer";
        name: "unauthorizedSigner";
    }]
  • instructions: [{
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "level";
            type: "u8";
        }];
        discriminator: [102, 204, 64, 169, 252, 177, 192, 232];
        docs: ["add level to identity account"];
        name: "addLevelToIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    kind: "arg";
                    path: "owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }, {
            name: "level";
            type: "u8";
        }];
        discriminator: [82, 240, 35, 129, 113, 134, 116, 70];
        docs: ["identity functions", "create identity account"];
        name: "createIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "assetMint";
        }, {
            name: "identityRegistryAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "assetMint";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "authority";
            type: "pubkey";
        }, {
            name: "delegate";
            type: {
                option: "pubkey";
            };
        }];
        discriminator: [180, 3, 39, 22, 183, 212, 39, 209];
        docs: ["registry functions", "create identity registry"];
        name: "createIdentityRegistry";
    }, {
        accounts: [{
            name: "authority";
            signer: true;
        }, {
            name: "identityRegistryAccount";
            writable: true;
        }];
        args: [{
            name: "delegate";
            type: "pubkey";
        }];
        discriminator: [29, 162, 167, 70, 52, 79, 50, 65];
        docs: ["delegate identity registry"];
        name: "delegateIdentityRegsitry";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }, {
            address: "11111111111111111111111111111111";
            name: "systemProgram";
        }];
        args: [{
            name: "level";
            type: "u8";
        }];
        discriminator: [194, 231, 187, 54, 197, 136, 170, 55];
        docs: ["remove level from identity account"];
        name: "removeLevelFromIdentityAccount";
    }, {
        accounts: [{
            name: "payer";
            signer: true;
            writable: true;
        }, {
            name: "signer";
            signer: true;
        }, {
            name: "identityRegistry";
            pda: {
                seeds: [{
                    account: "identityRegistryAccount";
                    kind: "account";
                    path: "identity_registry.asset_mint";
                }];
            };
        }, {
            name: "identityAccount";
            pda: {
                seeds: [{
                    kind: "account";
                    path: "identityRegistry";
                }, {
                    account: "identityAccount";
                    kind: "account";
                    path: "identity_account.owner";
                }];
            };
            writable: true;
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [77, 88, 182, 61, 235, 49, 2, 137];
        docs: ["revoke user identity account by closing account"];
        name: "revokeIdentityAccount";
    }]
  • metadata: {
        description: "The Identity Registry Program (IRP) manages the configurable issuance and tracking of on-chain identities to enable on-chain transaction permissioning.";
        name: "identityRegistry";
        repository: "https://github.com/bridgesplit/rwa";
        spec: "0.1.0";
        version: "0.0.1";
    }
    • description: "The Identity Registry Program (IRP) manages the configurable issuance and tracking of on-chain identities to enable on-chain transaction permissioning."
    • name: "identityRegistry"
    • repository: "https://github.com/bridgesplit/rwa"
    • spec: "0.1.0"
    • version: "0.0.1"
  • types: [{
        name: "identityAccount";
        type: {
            fields: [{
                docs: ["version of the account"];
                name: "version";
                type: "u8";
            }, {
                docs: ["identity registry to which the account belongs"];
                name: "identityRegistry";
                type: "pubkey";
            }, {
                docs: ["owner of the identity account"];
                name: "owner";
                type: "pubkey";
            }, {
                name: "levels";
                type: "bytes";
            }];
            kind: "struct";
        };
    }, {
        name: "identityRegistryAccount";
        type: {
            fields: [{
                name: "version";
                type: "u8";
            }, {
                docs: ["corresponding asset mint"];
                name: "assetMint";
                type: "pubkey";
            }, {
                docs: ["authority to manage the registry"];
                name: "authority";
                type: "pubkey";
            }, {
                docs: ["registry delegate"];
                name: "delegate";
                type: "pubkey";
            }];
            kind: "struct";
        };
    }]