Skip to content
Alchemy Logo

SendPreparedCallsParams

type SendPreparedCallsParams =
  | {
      type: "array";
      data: (
        | ({
            type: "user-operation-v060";
            data: {
              sender: `0x${string}`;
              nonce: bigint;
              initCode: `0x${string}`;
              callData: `0x${string}`;
              callGasLimit: bigint;
              verificationGasLimit: bigint;
              preVerificationGas: bigint;
              maxFeePerGas: bigint;
              maxPriorityFeePerGas: bigint;
              paymasterAndData: `0x${string}`;
            };
            chainId: number;
          } & {
            signature:
              | {
                  type: "secp256k1";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                }
              | {
                  type: "ecdsa";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                };
          })
        | ({
            type: "user-operation-v070";
            data: {
              sender: `0x${string}`;
              nonce: bigint;
              callData: `0x${string}`;
              callGasLimit: bigint;
              verificationGasLimit: bigint;
              preVerificationGas: bigint;
              maxFeePerGas: bigint;
              maxPriorityFeePerGas: bigint;
              factory?: `0x${string}` | undefined;
              factoryData?: `0x${string}` | undefined;
              paymaster?: `0x${string}` | undefined;
              paymasterData?: `0x${string}` | undefined;
              paymasterVerificationGasLimit?: bigint | undefined;
              paymasterPostOpGasLimit?: bigint | undefined;
            };
            chainId: number;
          } & {
            signature:
              | {
                  type: "secp256k1";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                }
              | {
                  type: "ecdsa";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                };
          })
        | ({
            type: "authorization";
            data: {
              address: `0x${string}`;
              nonce: number;
            };
            chainId: number;
          } & {
            signature:
              | {
                  type: "secp256k1";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                }
              | {
                  type: "ecdsa";
                  data:
                    | `0x${string}`
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        yParity: `0x${string}`;
                      }
                    | {
                        r: `0x${string}`;
                        s: `0x${string}`;
                        v: `0x${string}`;
                      };
                };
          })
      )[];
      chainId?: number | undefined;
      callId?: `0x${string}` | undefined;
      capabilities?:
        | (Omit<
            {
              permissions?:
                | {
                    context: `0x${string}`;
                  }
                | {
                    sessionId: `0x${string}`;
                    signature: `0x${string}`;
                  }
                | undefined;
              paymasterService?:
                | ((
                    | {
                        policyId: string;
                      }
                    | {
                        policyIds: string[];
                      }
                  ) & {
                    webhookData?: string | undefined;
                  })
                | undefined;
            },
            "paymasterService"
          > & {
            paymaster?:
              | ({
                  policyId: string;
                } & {
                  webhookData?: string | undefined;
                })
              | ({
                  policyIds: string[];
                } & {
                  webhookData?: string | undefined;
                })
              | undefined;
          })
        | undefined;
    }
  | {
      type: "user-operation-v060";
      signature:
        | {
            type: "secp256k1";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          }
        | {
            type: "ecdsa";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          };
      data: {
        sender: `0x${string}`;
        nonce: bigint;
        initCode: `0x${string}`;
        callData: `0x${string}`;
        callGasLimit: bigint;
        verificationGasLimit: bigint;
        preVerificationGas: bigint;
        maxFeePerGas: bigint;
        maxPriorityFeePerGas: bigint;
        paymasterAndData: `0x${string}`;
      };
      chainId?: number | undefined;
      callId?: `0x${string}` | undefined;
      capabilities?:
        | (Omit<
            {
              permissions?:
                | {
                    context: `0x${string}`;
                  }
                | {
                    sessionId: `0x${string}`;
                    signature: `0x${string}`;
                  }
                | undefined;
              paymasterService?:
                | ((
                    | {
                        policyId: string;
                      }
                    | {
                        policyIds: string[];
                      }
                  ) & {
                    webhookData?: string | undefined;
                  })
                | undefined;
            },
            "paymasterService"
          > & {
            paymaster?:
              | ({
                  policyId: string;
                } & {
                  webhookData?: string | undefined;
                })
              | ({
                  policyIds: string[];
                } & {
                  webhookData?: string | undefined;
                })
              | undefined;
          })
        | undefined;
    }
  | {
      type: "user-operation-v070";
      signature:
        | {
            type: "secp256k1";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          }
        | {
            type: "ecdsa";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          };
      data: {
        sender: `0x${string}`;
        nonce: bigint;
        callData: `0x${string}`;
        callGasLimit: bigint;
        verificationGasLimit: bigint;
        preVerificationGas: bigint;
        maxFeePerGas: bigint;
        maxPriorityFeePerGas: bigint;
        factory?: `0x${string}` | undefined;
        factoryData?: `0x${string}` | undefined;
        paymaster?: `0x${string}` | undefined;
        paymasterData?: `0x${string}` | undefined;
        paymasterVerificationGasLimit?: bigint | undefined;
        paymasterPostOpGasLimit?: bigint | undefined;
      };
      chainId?: number | undefined;
      callId?: `0x${string}` | undefined;
      capabilities?:
        | (Omit<
            {
              permissions?:
                | {
                    context: `0x${string}`;
                  }
                | {
                    sessionId: `0x${string}`;
                    signature: `0x${string}`;
                  }
                | undefined;
              paymasterService?:
                | ((
                    | {
                        policyId: string;
                      }
                    | {
                        policyIds: string[];
                      }
                  ) & {
                    webhookData?: string | undefined;
                  })
                | undefined;
            },
            "paymasterService"
          > & {
            paymaster?:
              | ({
                  policyId: string;
                } & {
                  webhookData?: string | undefined;
                })
              | ({
                  policyIds: string[];
                } & {
                  webhookData?: string | undefined;
                })
              | undefined;
          })
        | undefined;
    }
  | {
      type: "authorization";
      signature:
        | {
            type: "secp256k1";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          }
        | {
            type: "ecdsa";
            data:
              | `0x${string}`
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  yParity: `0x${string}`;
                }
              | {
                  r: `0x${string}`;
                  s: `0x${string}`;
                  v: `0x${string}`;
                };
          };
      data: {
        address: `0x${string}`;
        nonce: number;
      };
      chainId?: number | undefined;
      callId?: `0x${string}` | undefined;
      capabilities?:
        | (Omit<
            {
              permissions?:
                | {
                    context: `0x${string}`;
                  }
                | {
                    sessionId: `0x${string}`;
                    signature: `0x${string}`;
                  }
                | undefined;
              paymasterService?:
                | ((
                    | {
                        policyId: string;
                      }
                    | {
                        policyIds: string[];
                      }
                  ) & {
                    webhookData?: string | undefined;
                  })
                | undefined;
            },
            "paymasterService"
          > & {
            paymaster?:
              | ({
                  policyId: string;
                } & {
                  webhookData?: string | undefined;
                })
              | ({
                  policyIds: string[];
                } & {
                  webhookData?: string | undefined;
                })
              | undefined;
          })
        | undefined;
    };

Defined in: packages/wallet-apis/src/actions/sendPreparedCalls.ts:25

Was this page helpful?