/** * 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 { ApiKeyScope } from './ApiKeyScope'; import type { ApiKeyRequestUsage } from './ApiKeyRequestUsage'; import type { ApiKeyResourceTotals } from './ApiKeyResourceTotals'; /** * * @export * @interface ApiKey */ export interface ApiKey { /** * * @type {string} * @memberof ApiKey */ id: string; /** * * @type {string} * @memberof ApiKey */ name: string; /** * Credential storage lane. Scoped secrets are never stored in the legacy hash column. * @type {ApiKeyCredentialLaneEnum} * @memberof ApiKey */ credentialLane: ApiKeyCredentialLaneEnum; /** * * @type {string} * @memberof ApiKey */ keyPrefix: string; /** * * @type {string} * @memberof ApiKey */ keyLastFour: string; /** * Box ID for a platform-managed machine key, or null for a user-created key. * @type {string} * @memberof ApiKey */ sandboxId: string | null; /** * * @type {Date} * @memberof ApiKey */ createdAt: Date; /** * * @type {Date} * @memberof ApiKey */ lastUsedAt: Date | null; /** * * @type {ApiKeyRequestUsage} * @memberof ApiKey */ usage: ApiKeyRequestUsage; /** * * @type {ApiKeyResourceTotals} * @memberof ApiKey */ resources: ApiKeyResourceTotals; /** * * @type {Date} * @memberof ApiKey */ expiresAt?: Date | null; /** * * @type {boolean} * @memberof ApiKey */ expired?: boolean; /** * * @type {boolean} * @memberof ApiKey */ expiringSoon?: boolean; /** * * @type {ApiKeyScope} * @memberof ApiKey */ scope?: ApiKeyScope; } /** * @export */ export declare const ApiKeyCredentialLaneEnum: { readonly Legacy: 'legacy'; readonly ScopedV1: 'scoped-v1'; }; export type ApiKeyCredentialLaneEnum = typeof ApiKeyCredentialLaneEnum[keyof typeof ApiKeyCredentialLaneEnum]; /** * Check if a given object implements the ApiKey interface. */ export declare function instanceOfApiKey(value: object): value is ApiKey; export declare function ApiKeyFromJSON(json: any): ApiKey; export declare function ApiKeyFromJSONTyped(json: any, ignoreDiscriminator: boolean): ApiKey; export declare function ApiKeyToJSON(json: any): ApiKey; export declare function ApiKeyToJSONTyped(value?: ApiKey | null, ignoreDiscriminator?: boolean): any;