@unkey/api
Version:
Developer-friendly & type-safe Typescript SDK specifically catered to leverage *@unkey/api* API.
65 lines (55 loc) • 1.63 kB
text/typescript
/*
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
*/
import { HTTPClient } from "./http.js";
import { Logger } from "./logger.js";
import { RetryConfig } from "./retries.js";
import { Params, pathToFunc } from "./url.js";
/**
* Contains the list of servers available to the SDK
*/
export const ServerList = [
"https://api.unkey.com",
] as const;
export type SDKOptions = {
rootKey?: string | (() => Promise<string>) | undefined;
httpClient?: HTTPClient;
/**
* Allows overriding the default server used by the SDK
*/
serverIdx?: number | undefined;
/**
* Allows overriding the default server URL used by the SDK
*/
serverURL?: string | undefined;
/**
* Allows overriding the default user agent used by the SDK
*/
userAgent?: string | undefined;
/**
* Allows overriding the default retry config used by the SDK
*/
retryConfig?: RetryConfig;
timeoutMs?: number;
debugLogger?: Logger;
};
export function serverURLFromOptions(options: SDKOptions): URL | null {
let serverURL = options.serverURL;
const params: Params = {};
if (!serverURL) {
const serverIdx = options.serverIdx ?? 0;
if (serverIdx < 0 || serverIdx >= ServerList.length) {
throw new Error(`Invalid server index ${serverIdx}`);
}
serverURL = ServerList[serverIdx] || "";
}
const u = pathToFunc(serverURL)(params);
return new URL(u);
}
export const SDK_METADATA = {
language: "typescript",
openapiDocVersion: "2.0.0",
sdkVersion: "2.3.4",
genVersion: "2.882.0",
userAgent: "speakeasy-sdk/typescript 2.3.4 2.882.0 2.0.0 @unkey/api",
} as const;