assertIsParallelTransactionPlanResult

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

Asserts that the given transaction plan result is a ParallelTransactionPlanResult.

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<{ kind: "parallel"; 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 parallel transaction plan result.

Example

const result: TransactionPlanResult = parallelTransactionPlanResult([resultA, resultB]);
 
assertIsParallelTransactionPlanResult(result);
console.log(result.plans.length); // TypeScript knows this is a ParallelTransactionPlanResult.

See

On this page