/** * Boat Public API v1 * Public JSON API for creating, operating, prompting, observing, and exposing Boat sandboxes from backend services, CI jobs, hosted workers, and Boat automation products. The v1 reference intentionally documents the developer integration surface only. Dashboard billing actions are not part of v1. * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { LimitsFieldsCurrentLimits } from './LimitsFieldsCurrentLimits'; import type { LimitsFieldsStartLimits } from './LimitsFieldsStartLimits'; import type { LimitsFieldsStarts } from './LimitsFieldsStarts'; /** * * @export * @interface LimitsFields */ export interface LimitsFields { [key: string]: any | any; /** * * @type {string} * @memberof LimitsFields */ accessTier?: string; /** * * @type {string} * @memberof LimitsFields */ blockedReason?: string | null; /** * * @type {LimitsFieldsCurrentLimits} * @memberof LimitsFields */ currentLimits?: LimitsFieldsCurrentLimits; /** * * @type {LimitsFieldsCurrentLimits} * @memberof LimitsFields */ standardLimits?: LimitsFieldsCurrentLimits; /** * * @type {LimitsFieldsCurrentLimits} * @memberof LimitsFields */ trialLimits?: LimitsFieldsCurrentLimits; /** * * @type {{ [key: string]: any; }} * @memberof LimitsFields */ upgradeEffects?: { [key: string]: any; }; /** * Whether the authenticated account can create or operate boxes right now. * @type {boolean} * @memberof LimitsFields */ canStart: boolean; /** * * @type {boolean} * @memberof LimitsFields */ checkoutRequired?: boolean; /** * * @type {string} * @memberof LimitsFields */ startBlockedReason?: string | null; /** * * @type {string} * @memberof LimitsFields */ contactMessage?: string | null; /** * * @type {number} * @memberof LimitsFields */ activeBoxes: number; /** * * @type {Array} * @memberof LimitsFields */ activeStates?: Array; /** * * @type {number} * @memberof LimitsFields */ maxActiveBoxes: number; /** * * @type {number} * @memberof LimitsFields */ maxCreationRequestsPerMinute?: number; /** * * @type {number} * @memberof LimitsFields */ maxCreationRequestsPerDay?: number | null; /** * * @type {LimitsFieldsStartLimits} * @memberof LimitsFields */ startLimits?: LimitsFieldsStartLimits; /** * * @type {LimitsFieldsStarts} * @memberof LimitsFields */ starts?: LimitsFieldsStarts; /** * Remaining machine time in hours (`creditBalanceSeconds / 3600`). Null on unlimited accounts. * @type {number} * @memberof LimitsFields */ creditBalanceHours?: number | null; /** * Remaining purchased credit packs in hours. * @type {number} * @memberof LimitsFields */ packBalanceHours?: number; /** * Remaining purchased credit packs in dollars. * @type {number} * @memberof LimitsFields */ packBalanceDollars?: number; /** * * @type {boolean} * @memberof LimitsFields */ hasPaymentHistory?: boolean; /** * * @type {{ [key: string]: any; }} * @memberof LimitsFields */ _package?: { [key: string]: any; }; /** * * @type {number} * @memberof LimitsFields */ subscriptionQuotaSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ subscriptionRemainingSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ packBalanceSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ creditPurchasedSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ creditUsedSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ liveUsageSeconds?: number; /** * * @type {number} * @memberof LimitsFields */ creditSecondsPerDollar?: number; /** * Account access state returned by the current backend. Billing endpoints are not part of v1. * @type {string} * @memberof LimitsFields */ billingStatus: string; /** * * @type {string} * @memberof LimitsFields */ subscriptionStatus?: string | null; /** * * @type {boolean} * @memberof LimitsFields */ subscriptionCancelAtPeriodEnd?: boolean; /** * * @type {boolean} * @memberof LimitsFields */ hasSubscription?: boolean; /** * * @type {Date} * @memberof LimitsFields */ subscriptionTrialEndsAt?: Date | null; /** * * @type {Date} * @memberof LimitsFields */ subscriptionCurrentPeriodEnd?: Date | null; /** * * @type {number} * @memberof LimitsFields */ creditBalanceSeconds?: number; /** * Present when limits were read for a team wallet (`?teamId=`, `?org=`, or `X-Box-Org`). * @type {string} * @memberof LimitsFields */ teamId?: string; /** * Caller's role on that team when `teamId` is present. * @type {string} * @memberof LimitsFields */ teamRole?: string; } /** * Check if a given object implements the LimitsFields interface. */ export declare function instanceOfLimitsFields(value: object): value is LimitsFields; export declare function LimitsFieldsFromJSON(json: any): LimitsFields; export declare function LimitsFieldsFromJSONTyped(json: any, ignoreDiscriminator: boolean): LimitsFields; export declare function LimitsFieldsToJSON(json: any): LimitsFields; export declare function LimitsFieldsToJSONTyped(value?: LimitsFields | null, ignoreDiscriminator?: boolean): any;