type InitializeAccountInstruction<TProgram, TAccountAccount, TAccountMint, TAccountOwner, TAccountRent, TRemainingAccounts> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountAccount extends string ? WritableAccount<TAccountAccount> : TAccountAccount, TAccountMint extends string ? ReadonlyAccount<TAccountMint> : TAccountMint, TAccountOwner extends string ? ReadonlyAccount<TAccountOwner> : TAccountOwner, TAccountRent extends string ? ReadonlyAccount<TAccountRent> : TAccountRent, ...TRemainingAccounts]>;