type TransferCheckedInstruction<TProgram, TAccountSource, TAccountMint, TAccountDestination, TAccountAuthority, TRemainingAccounts> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountSource extends string ? WritableAccount<TAccountSource> : TAccountSource, TAccountMint extends string ? ReadonlyAccount<TAccountMint> : TAccountMint, TAccountDestination extends string ? WritableAccount<TAccountDestination> : TAccountDestination, TAccountAuthority extends string ? ReadonlyAccount<TAccountAuthority> : TAccountAuthority, ...TRemainingAccounts]>;