import { type Client } from '../core.js'; import { type RequestOptions } from '../lib/types.js'; import type { ListCustomerEntitlementAccessRequest, ListCustomerEntitlementAccessResponse, GetCustomerEntitlementAccessRequest, GetCustomerEntitlementAccessResponse, GetCustomerEntitlementValueByFeatureKeyRequest, GetCustomerEntitlementValueByFeatureKeyResponse, ListEntitlementsRequest, ListEntitlementsResponse, GetEntitlementRequest, GetEntitlementResponse, GetCustomerEntitlementValueRequest, GetCustomerEntitlementValueResponse } from '../models/operations/entitlements.js'; import type { Entitlement } from '../models/types.js'; export declare class Entitlements { private readonly _client; constructor(_client: Client); /** * List customer entitlement access * * GET /openmeter/customers/{customerId}/entitlement-access */ listCustomerAccess(request: ListCustomerEntitlementAccessRequest, options?: RequestOptions): Promise; /** * Get customer entitlement access * * Get the customer's access to a single feature. * * GET /openmeter/customers/{customerId}/entitlement-access/features/{featureKey} */ getCustomerAccess(request: GetCustomerEntitlementAccessRequest, options?: RequestOptions): Promise; /** * Get customer entitlement value by feature key * * Get the customer's entitlement value for a feature at a point in time. Without * an active entitlement, the result denies access and omits the type. * * GET /openmeter/customers/{customerId}/entitlement-access/features/{featureKey}/value */ getCustomerValueByFeatureKey(request: GetCustomerEntitlementValueByFeatureKeyRequest, options?: RequestOptions): Promise; /** * List entitlements * * List the active entitlements of all customers. Intended for administrative use. * To list the entitlements of a single customer, use the customer entitlements * endpoints; to check entitlement access, use the entitlement access endpoints. * * GET /openmeter/entitlements */ list(request?: ListEntitlementsRequest, options?: RequestOptions): Promise; /** * List entitlements * * List the active entitlements of all customers. Intended for administrative use. * To list the entitlements of a single customer, use the customer entitlements * endpoints; to check entitlement access, use the entitlement access endpoints. * * Iterates every item across all pages, fetching more as the returned iterable is consumed. * * GET /openmeter/entitlements */ listAll(request?: ListEntitlementsRequest, options?: RequestOptions): AsyncIterable; /** * Get entitlement * * Get an entitlement by ID. To check entitlement access, use the entitlement * access endpoints instead. * * GET /openmeter/entitlements/{entitlementId} */ get(request: GetEntitlementRequest, options?: RequestOptions): Promise; /** * Get customer entitlement value * * Get the customer's access through a single entitlement, optionally evaluated at * a point in time. * * GET /openmeter/customers/{customerId}/entitlements/{entitlementId}/value */ getCustomerValue(request: GetCustomerEntitlementValueRequest, options?: RequestOptions): Promise; }