Type alias SystemProgram

SystemProgram: {
    accounts: [{
        discriminator: [];
        name: "nonce";
    }];
    address: "11111111111111111111111111111111";
    instructions: [{
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [4, 0, 0, 0];
        name: "advanceNonceAccount";
    }, {
        accounts: [{
            name: "pubkey";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "space";
            type: "u64";
        }];
        discriminator: [8, 0, 0, 0];
        name: "allocate";
    }, {
        accounts: [{
            name: "account";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [9, 0, 0, 0];
        name: "allocateWithSeed";
    }, {
        accounts: [{
            name: "pubkey";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [1, 0, 0, 0];
        name: "assign";
    }, {
        accounts: [{
            name: "account";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [10, 0, 0, 0];
        name: "assignWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [7, 0, 0, 0];
        name: "authorizeNonceAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [0, 0, 0, 0];
        name: "createAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "lamports";
            type: "u64";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [3, 0, 0, 0];
        name: "createAccountWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            signer: true;
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            address: "SysvarRent111111111111111111111111111111111";
            name: "rent";
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [6, 0, 0, 0];
        name: "initializeNonceAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }];
        discriminator: [2, 0, 0, 0];
        name: "transfer";
    }, {
        accounts: [{
            name: "from";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }, {
            name: "to";
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [11, 0, 0, 0];
        name: "transferWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "to";
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            address: "SysvarRent111111111111111111111111111111111";
            name: "rent";
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }];
        discriminator: [5, 0, 0, 0];
        name: "withdrawNonceAccount";
    }];
    metadata: {
        name: "systemProgram";
        spec: "0.1.0";
        version: "0.1.0";
    };
    types: [{
        name: "feeCalculator";
        type: {
            fields: [{
                name: "lamportsPerSignature";
                type: "u64";
            }];
            kind: "struct";
        };
    }, {
        name: "nonce";
        type: {
            fields: [{
                name: "version";
                type: "u32";
            }, {
                name: "state";
                type: "u32";
            }, {
                name: "authorizedPubkey";
                type: "pubkey";
            }, {
                name: "nonce";
                type: "pubkey";
            }, {
                name: "feeCalculator";
                type: {
                    defined: {
                        name: "feeCalculator";
                    };
                };
            }];
            kind: "struct";
        };
    }];
}

System IDL.

Type declaration

  • accounts: [{
        discriminator: [];
        name: "nonce";
    }]
  • address: "11111111111111111111111111111111"
  • instructions: [{
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [4, 0, 0, 0];
        name: "advanceNonceAccount";
    }, {
        accounts: [{
            name: "pubkey";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "space";
            type: "u64";
        }];
        discriminator: [8, 0, 0, 0];
        name: "allocate";
    }, {
        accounts: [{
            name: "account";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [9, 0, 0, 0];
        name: "allocateWithSeed";
    }, {
        accounts: [{
            name: "pubkey";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [1, 0, 0, 0];
        name: "assign";
    }, {
        accounts: [{
            name: "account";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [10, 0, 0, 0];
        name: "assignWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [7, 0, 0, 0];
        name: "authorizeNonceAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            signer: true;
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [0, 0, 0, 0];
        name: "createAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }];
        args: [{
            name: "base";
            type: "pubkey";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "lamports";
            type: "u64";
        }, {
            name: "space";
            type: "u64";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [3, 0, 0, 0];
        name: "createAccountWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            signer: true;
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            address: "SysvarRent111111111111111111111111111111111";
            name: "rent";
        }];
        args: [{
            name: "authorized";
            type: "pubkey";
        }];
        discriminator: [6, 0, 0, 0];
        name: "initializeNonceAccount";
    }, {
        accounts: [{
            name: "from";
            signer: true;
            writable: true;
        }, {
            name: "to";
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }];
        discriminator: [2, 0, 0, 0];
        name: "transfer";
    }, {
        accounts: [{
            name: "from";
            writable: true;
        }, {
            name: "base";
            signer: true;
        }, {
            name: "to";
            writable: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }, {
            name: "seed";
            type: "string";
        }, {
            name: "owner";
            type: "pubkey";
        }];
        discriminator: [11, 0, 0, 0];
        name: "transferWithSeed";
    }, {
        accounts: [{
            name: "nonce";
            writable: true;
        }, {
            name: "to";
            writable: true;
        }, {
            name: "recentBlockhashes";
        }, {
            address: "SysvarRent111111111111111111111111111111111";
            name: "rent";
        }, {
            name: "authorized";
            signer: true;
        }];
        args: [{
            name: "lamports";
            type: "u64";
        }];
        discriminator: [5, 0, 0, 0];
        name: "withdrawNonceAccount";
    }]
  • metadata: {
        name: "systemProgram";
        spec: "0.1.0";
        version: "0.1.0";
    }
    • name: "systemProgram"
    • spec: "0.1.0"
    • version: "0.1.0"
  • types: [{
        name: "feeCalculator";
        type: {
            fields: [{
                name: "lamportsPerSignature";
                type: "u64";
            }];
            kind: "struct";
        };
    }, {
        name: "nonce";
        type: {
            fields: [{
                name: "version";
                type: "u32";
            }, {
                name: "state";
                type: "u32";
            }, {
                name: "authorizedPubkey";
                type: "pubkey";
            }, {
                name: "nonce";
                type: "pubkey";
            }, {
                name: "feeCalculator";
                type: {
                    defined: {
                        name: "feeCalculator";
                    };
                };
            }];
            kind: "struct";
        };
    }]