@renegade-fi/core
Version:
VanillaJS library for Renegade
45 lines (38 loc) • 1.45 kB
text/typescript
import type { MutationOptions } from "@tanstack/query-core";
import {
type CreateOrderRequestErrorType,
type CreateOrderRequestParameters,
type CreateOrderRequestReturnType,
createOrderRequest,
} from "../actions/createOrderRequest.js";
import type { Config } from "../createConfig.js";
import { ConfigRequiredError } from "../errors/base.js";
import type { Evaluate } from "../types/utils.js";
import type { Mutate, MutateAsync } from "./types.js";
export function createOrderRequestMutationOptions(config: Config | undefined) {
return {
mutationFn(variables) {
if (!config) throw new ConfigRequiredError("createOrderRequest");
return createOrderRequest(config, variables);
},
mutationKey: ["createOrderRequest"],
} as const satisfies MutationOptions<
CreateOrderRequestData,
CreateOrderRequestErrorType,
CreateOrderRequestVariables
>;
}
export type CreateOrderRequestData = CreateOrderRequestReturnType;
export type CreateOrderRequestVariables = Evaluate<CreateOrderRequestParameters>;
export type CreateOrderRequestMutate<context = unknown> = Mutate<
CreateOrderRequestData,
CreateOrderRequestErrorType,
CreateOrderRequestVariables,
context
>;
export type CreateOrderRequestMutateAsync<context = unknown> = MutateAsync<
CreateOrderRequestData,
CreateOrderRequestErrorType,
CreateOrderRequestVariables,
context
>;