UNPKG

@usegrant/sdk

Version:

TypeSafe TypeScript SDK for accessing the UseGrant REST API

108 lines (106 loc) 5.34 kB
Object.defineProperty(exports, '__esModule', { value: true }); const require_schema = require('./schema-BX90jiDJ.cjs'); const ky = require_schema.__toESM(require("ky")); //#region src/index.ts const API_URL = "https://sdk.usegrant.dev"; var UseGrant = class { #api; constructor(apiKey, options = {}) { if (!apiKey) throw new Error("API key is required"); this.#api = ky.default.create({ signal: options.signal, prefixUrl: options.baseUrl ?? API_URL, headers: { Authorization: `Bearer ${apiKey}` }, retry: options.retry }); } listProviders = require_schema.GetProvidersFn.implementAsync(() => { return this.#api.get("v1/providers").json(); }); createProvider = require_schema.CreateProviderFn.implementAsync((req) => { return this.#api.post("v1/providers", { json: req }).json(); }); getProvider = require_schema.GetProviderFn.implementAsync((id) => { return this.#api.get(`v1/providers/${id}`).json(); }); deleteProvider = require_schema.DeleteProviderFn.implementAsync((id) => { return this.#api.delete(`v1/providers/${id}`).json(); }); listClients = require_schema.GetClientsFn.implementAsync((providerId) => { return this.#api.get(`v1/providers/${providerId}/clients`).json(); }); createClient = require_schema.CreateClientFn.implementAsync((providerId, req) => { return this.#api.post(`v1/providers/${providerId}/clients`, { json: req }).json(); }); getClient = require_schema.GetClientFn.implementAsync((providerId, clientId) => { return this.#api.get(`v1/providers/${providerId}/clients/${clientId}`).json(); }); deleteClient = require_schema.DeleteClientFn.implementAsync((providerId, clientId) => { return this.#api.delete(`v1/providers/${providerId}/clients/${clientId}`).json(); }); createToken = require_schema.CreateTokenFn.implementAsync((providerId, clientId, req) => { return this.#api.post(`v1/providers/${providerId}/clients/${clientId}/tokens`, { json: req }).json(); }); listDomains = require_schema.GetDomainsFn.implementAsync((providerId) => { return this.#api.get(`v1/providers/${providerId}/domains`).json(); }); addDomain = require_schema.AddDomainFn.implementAsync((providerId, req) => { return this.#api.post(`v1/providers/${providerId}/domains`, { json: req }).json(); }); deleteDomain = require_schema.DeleteDomainFn.implementAsync((providerId, domainId) => { return this.#api.delete(`v1/providers/${providerId}/domains/${domainId}`).json(); }); getDomain = require_schema.GetDomainFn.implementAsync((providerId, domainId) => { return this.#api.get(`v1/providers/${providerId}/domains/${domainId}`).json(); }); verifyDomain = require_schema.VerifyDomainFn.implementAsync((providerId, domainId) => { return this.#api.post(`v1/providers/${providerId}/domains/${domainId}/verify`).json(); }); listTenants = require_schema.GetTenantsFn.implementAsync(() => { return this.#api.get(`v1/tenants`).json(); }); createTenant = require_schema.CreateTenantFn.implementAsync((req) => { return this.#api.post("v1/tenants", { json: req }).json(); }); getTenant = require_schema.GetTenantFn.implementAsync((tenantId) => { return this.#api.get(`v1/tenants/${tenantId}`).json(); }); deleteTenant = require_schema.DeleteTenantFn.implementAsync((tenantId) => { return this.#api.delete(`v1/tenants/${tenantId}`).json(); }); listTenantProviders = require_schema.GetTenantProvidersFn.implementAsync((tenantId) => { return this.#api.get(`v1/tenants/${tenantId}/providers`).json(); }); createTenantProvider = require_schema.CreateTenantProviderFn.implementAsync((tenantId, req) => { return this.#api.post(`v1/tenants/${tenantId}/providers`, { json: req }).json(); }); getTenantProvider = require_schema.GetTenantProviderFn.implementAsync((tenantId, providerId) => { return this.#api.get(`v1/tenants/${tenantId}/providers/${providerId}`).json(); }); deleteTenantProvider = require_schema.DeleteTenantProviderFn.implementAsync((tenantId, providerId) => { return this.#api.delete(`v1/tenants/${tenantId}/providers/${providerId}`).json(); }); listTenantProviderPolicies = require_schema.GetTenantProviderPoliciesFn.implementAsync((tenantId, providerId) => { return this.#api.get(`v1/tenants/${tenantId}/providers/${providerId}/policies`).json(); }); createTenantProviderPolicy = require_schema.CreateTenantProviderPolicyFn.implementAsync((tenantId, providerId, req) => { return this.#api.post(`v1/tenants/${tenantId}/providers/${providerId}/policies`, { json: req }).json(); }); getTenantProviderPolicy = require_schema.GetTenantProviderPolicyFn.implementAsync((tenantId, providerId, policyId) => { return this.#api.get(`v1/tenants/${tenantId}/providers/${providerId}/policies/${policyId}`).json(); }); deleteTenantProviderPolicy = require_schema.DeleteTenantProviderPolicyFn.implementAsync((tenantId, providerId, policyId) => { return this.#api.delete(`v1/tenants/${tenantId}/providers/${providerId}/policies/${policyId}`).json(); }); validateToken = require_schema.ValidateTokenFn.implementAsync((tenantId, policyId, token) => { return this.#api.post(`v1/tenants/${tenantId}/validate`, { json: { tenantProviderPolicyId: policyId, token } }).json(); }); }; var src_default = UseGrant; //#endregion exports.UseGrantError = ky.HTTPError; exports.default = src_default; //# sourceMappingURL=index.cjs.map