Docs

SDKOptionsSchema

let SDKOptionsSchema: ZodDefault<
ZodObject<
{
clientId: ZodOptional<ZodString>;
gasSettings: ZodDefault<
ZodObject<
{
maxPriceInGwei: ZodDefault<ZodNumber>;
speed: ZodDefault<ZodEnum<["standard", "fast", "fastest"]>>;
},
"strip",
ZodTypeAny,
{ maxPriceInGwei: number; speed: "standard" | "fast" | "fastest" },
{ maxPriceInGwei?: number; speed?: "standard" | "fast" | "fastest" }
>
>;
gasless: ZodOptional<
ZodUnion<
[
ZodObject<
{
experimentalChainlessSupport: ZodDefault<ZodBoolean>;
openzeppelin: ZodObject<
{
domainName: ZodDefault<ZodString>;
domainVersion: ZodDefault<ZodString>;
relayerForwarderAddress: ZodOptional<ZodString>;
relayerUrl: ZodString;
useEOAForwarder: ZodDefault<ZodBoolean>;
},
"strip",
ZodTypeAny,
{
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string;
relayerUrl: string;
useEOAForwarder: boolean;
},
{
domainName?: string;
domainVersion?: string;
relayerForwarderAddress?: string;
relayerUrl: string;
useEOAForwarder?: boolean;
}
>;
},
"strip",
ZodTypeAny,
{
experimentalChainlessSupport: boolean;
openzeppelin: {
relayerUrl: string;
useEOAForwarder: boolean;
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string | undefined;
};
},
{
experimentalChainlessSupport?: boolean;
openzeppelin: {
relayerUrl: string;
relayerForwarderAddress?: string | undefined;
useEOAForwarder?: boolean | undefined;
domainName?: string | undefined;
domainVersion?: string | undefined;
};
}
>,
ZodObject<
{
biconomy: ZodObject<
{
apiId: ZodString;
apiKey: ZodString;
deadlineSeconds: ZodDefault<ZodNumber>;
},
"strip",
ZodTypeAny,
{ apiId: string; apiKey: string; deadlineSeconds: number },
{ apiId: string; apiKey: string; deadlineSeconds?: number }
>;
},
"strip",
ZodTypeAny,
{
biconomy: {
apiId: string;
apiKey: string;
deadlineSeconds: number;
};
},
{
biconomy: {
apiId: string;
apiKey: string;
deadlineSeconds?: number | undefined;
};
}
>,
ZodObject<
{
engine: ZodObject<
{
domainName: ZodDefault<ZodString>;
domainVersion: ZodDefault<ZodString>;
relayerForwarderAddress: ZodOptional<ZodString>;
relayerUrl: ZodEffects<ZodString, string, string>;
},
"strip",
ZodTypeAny,
{
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string;
relayerUrl: string;
},
{
domainName?: string;
domainVersion?: string;
relayerForwarderAddress?: string;
relayerUrl: string;
}
>;
experimentalChainlessSupport: ZodDefault<ZodBoolean>;
},
"strip",
ZodTypeAny,
{
engine: {
relayerUrl: string;
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string | undefined;
};
experimentalChainlessSupport: boolean;
},
{
engine: {
relayerUrl: string;
relayerForwarderAddress?: string | undefined;
domainName?: string | undefined;
domainVersion?: string | undefined;
};
experimentalChainlessSupport?: boolean;
}
>,
]
>
>;
gatewayUrls: ZodOptional<ZodArray<ZodString, "many">>;
readonlySettings: ZodOptional<
ZodObject<
{ chainId: ZodOptional<ZodNumber>; rpcUrl: ZodString },
"strip",
ZodTypeAny,
{ chainId?: number; rpcUrl: string },
{ chainId?: number; rpcUrl: string }
>
>;
rpcBatchSettings: ZodOptional<
ZodObject<
{
sizeLimit: ZodDefault<ZodNumber>;
timeLimit: ZodDefault<ZodNumber>;
},
"strip",
ZodTypeAny,
{ sizeLimit: number; timeLimit: number },
{ sizeLimit?: number; timeLimit?: number }
>
>;
secretKey: ZodOptional<ZodString>;
supportedChains: ZodDefault<
ZodArray<
ZodObject<
{
chainId: ZodNumber;
nativeCurrency: ZodObject<
{ decimals: ZodNumber; name: ZodString; symbol: ZodString },
"strip",
ZodTypeAny,
{ decimals: number; name: string; symbol: string },
{ decimals: number; name: string; symbol: string }
>;
rpc: ZodArray<ZodString, "many">;
slug: ZodString;
},
"strip",
ZodTypeAny,
{
chainId: number;
nativeCurrency: {
symbol: string;
name: string;
decimals: number;
};
rpc: Array<string>;
slug: string;
},
{
chainId: number;
nativeCurrency: {
symbol: string;
name: string;
decimals: number;
};
rpc: Array<string>;
slug: string;
}
>,
"many"
>
>;
},
"strip",
ZodTypeAny,
{
clientId?: string;
gasSettings: {
maxPriceInGwei: number;
speed: "standard" | "fast" | "fastest";
};
gasless?:
| {
openzeppelin: {
relayerUrl: string;
useEOAForwarder: boolean;
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string | undefined;
};
experimentalChainlessSupport: boolean;
}
| {
biconomy: {
apiId: string;
apiKey: string;
deadlineSeconds: number;
};
}
| {
experimentalChainlessSupport: boolean;
engine: {
relayerUrl: string;
domainName: string;
domainVersion: string;
relayerForwarderAddress?: string | undefined;
};
};
gatewayUrls?: Array<string>;
readonlySettings?: { rpcUrl: string; chainId?: number | undefined };
rpcBatchSettings?: { sizeLimit: number; timeLimit: number };
secretKey?: string;
supportedChains: Array<{
rpc: string[];
chainId: number;
nativeCurrency: { symbol: string; name: string; decimals: number };
slug: string;
}>;
},
{
clientId?: string;
gasSettings?: {
maxPriceInGwei?: number | undefined;
speed?: "standard" | "fast" | "fastest" | undefined;
};
gasless?:
| {
openzeppelin: {
relayerUrl: string;
relayerForwarderAddress?: string | undefined;
useEOAForwarder?: boolean | undefined;
domainName?: string | undefined;
domainVersion?: string | undefined;
};
experimentalChainlessSupport?: boolean | undefined;
}
| {
biconomy: {
apiId: string;
apiKey: string;
deadlineSeconds?: number | undefined;
};
}
| {
engine: {
relayerUrl: string;
relayerForwarderAddress?: string | undefined;
domainName?: string | undefined;
domainVersion?: string | undefined;
};
experimentalChainlessSupport?: boolean | undefined;
};
gatewayUrls?: Array<string>;
readonlySettings?: { rpcUrl: string; chainId?: number | undefined };
rpcBatchSettings?: {
sizeLimit?: number | undefined;
timeLimit?: number | undefined;
};
secretKey?: string;
supportedChains?: Array<{
rpc: string[];
chainId: number;
nativeCurrency: { symbol: string; name: string; decimals: number };
slug: string;
}>;
}
>
>;