assertIsSequentialTransactionPlanResult

function assertIsSequentialTransactionPlanResult<
    TContext,
    TTransactionMessage,
    TSingle,
>(
    plan,
): asserts plan is Readonly<{
    divisible: boolean;
    kind: 'sequential';
    plans: TransactionPlanResult<
        TContext,
        TTransactionMessage,
        TSingle
    >[];
    planType: 'transactionPlanResult';
}>;

Asserts that the given transaction plan result is a SequentialTransactionPlanResult.

Type Parameters

Type ParameterDefault type
TContext extends TransactionPlanResultContextTransactionPlanResultContext
TTransactionMessage extends TransactionMessage & TransactionMessageWithFeePayer<string>TransactionMessage & TransactionMessageWithFeePayer<string>
TSingle extends SingleTransactionPlanResult<TContext, TTransactionMessage>SingleTransactionPlanResult<TContext, TTransactionMessage>

Parameters

ParameterTypeDescription
planTransactionPlanResult<TContext, TTransactionMessage, TSingle>The transaction plan result to assert.

Returns

asserts plan is Readonly<{ divisible: boolean; kind: "sequential"; plans: TransactionPlanResult<TContext, TTransactionMessage, TSingle>[]; planType: "transactionPlanResult" }>

Throws

Throws a SolanaError with code SOLANA_ERROR__INSTRUCTION_PLANS__UNEXPECTED_TRANSACTION_PLAN_RESULT if the result is not a sequential transaction plan result.

Example

const result: TransactionPlanResult = sequentialTransactionPlanResult([resultA, resultB]);
 
assertIsSequentialTransactionPlanResult(result);
console.log(result.divisible); // TypeScript knows this is a SequentialTransactionPlanResult.

See

On this page