UNPKG

@emergentmethods/asknews-typescript-sdk

Version:
111 lines (100 loc) 3.68 kB
/* tslint:disable */ /* eslint-disable */ /** * AskNews API * AskNews API [![status](https://status.asknews.app/api/badge/2/status?style=for-the-badge)](https://status.asknews.app/status/prod) * * The version of the OpenAPI document: 0.24.66 * Contact: contact@emergentmethods.ai * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; /** * * @export * @interface RateLimitStatusResponse */ export interface RateLimitStatusResponse { /** * Configured tokens replenished per second * @type {number} * @memberof RateLimitStatusResponse */ requestRate: number; /** * Maximum burst token capacity * @type {number} * @memberof RateLimitStatusResponse */ requestRateCapacity: number; /** * Effective available tokens right now (accounts for time elapsed since last request) * @type {number} * @memberof RateLimitStatusResponse */ requestRateRemaining: number; /** * * @type {number} * @memberof RateLimitStatusResponse */ retryAfter?: number | null; /** * Maximum allowed concurrent requests * @type {number} * @memberof RateLimitStatusResponse */ concurrencyLimit: number; /** * Available concurrent request slots right now * @type {number} * @memberof RateLimitStatusResponse */ concurrencyRemaining: number; } /** * Check if a given object implements the RateLimitStatusResponse interface. */ export function instanceOfRateLimitStatusResponse(value: object): value is RateLimitStatusResponse { if (!('requestRate' in value) || value['requestRate'] === undefined) return false; if (!('requestRateCapacity' in value) || value['requestRateCapacity'] === undefined) return false; if (!('requestRateRemaining' in value) || value['requestRateRemaining'] === undefined) return false; if (!('concurrencyLimit' in value) || value['concurrencyLimit'] === undefined) return false; if (!('concurrencyRemaining' in value) || value['concurrencyRemaining'] === undefined) return false; return true; } export function RateLimitStatusResponseFromJSON(json: any): RateLimitStatusResponse { return RateLimitStatusResponseFromJSONTyped(json, false); } export function RateLimitStatusResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): RateLimitStatusResponse { if (json == null) { return json; } return { 'requestRate': json['request_rate'], 'requestRateCapacity': json['request_rate_capacity'], 'requestRateRemaining': json['request_rate_remaining'], 'retryAfter': json['retry_after'] == null ? undefined : json['retry_after'], 'concurrencyLimit': json['concurrency_limit'], 'concurrencyRemaining': json['concurrency_remaining'], }; } export function RateLimitStatusResponseToJSON(json: any): RateLimitStatusResponse { return RateLimitStatusResponseToJSONTyped(json, false); } export function RateLimitStatusResponseToJSONTyped(value?: RateLimitStatusResponse | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'request_rate': value['requestRate'], 'request_rate_capacity': value['requestRateCapacity'], 'request_rate_remaining': value['requestRateRemaining'], 'retry_after': value['retryAfter'], 'concurrency_limit': value['concurrencyLimit'], 'concurrency_remaining': value['concurrencyRemaining'], }; }