import { APIResource } from "../../resource.js"; import * as Core from "../../core.js"; import * as FilesAPI from "./files/files.js"; import { FileCreateParams, FileCreateResponse, FileListParams, FileListResponse, FileListResponsesPage, FileRetrieveResponse, Files } from "./files/files.js"; import { CursorPage, type CursorPageParams } from "../../pagination.js"; export declare class Containers extends APIResource { files: FilesAPI.Files; /** * Create Container */ create(body: ContainerCreateParams, options?: Core.RequestOptions): Core.APIPromise; /** * Retrieve Container */ retrieve(containerId: string, options?: Core.RequestOptions): Core.APIPromise; /** * List Containers */ list(query?: ContainerListParams, options?: Core.RequestOptions): Core.PagePromise; list(options?: Core.RequestOptions): Core.PagePromise; /** * Delete Container */ del(containerId: string, options?: Core.RequestOptions): Core.APIPromise; } export declare class ContainerListResponsesPage extends CursorPage { } export interface ContainerCreateResponse { /** * Unique identifier for the container. */ id: string; /** * Unix timestamp (in seconds) when the container was created. */ created_at: number; /** * Name of the container. */ name: string; /** * The type of this object. */ object: string; /** * Status of the container (e.g., active, deleted). */ status: string; /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ expires_after?: ContainerCreateResponse.ExpiresAfter; } export declare namespace ContainerCreateResponse { /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ interface ExpiresAfter { /** * The reference point for the expiration. */ anchor?: 'last_active_at'; /** * The number of minutes after the anchor before the container expires. */ minutes?: number; } } export interface ContainerRetrieveResponse { /** * Unique identifier for the container. */ id: string; /** * Unix timestamp (in seconds) when the container was created. */ created_at: number; /** * Name of the container. */ name: string; /** * The type of this object. */ object: string; /** * Status of the container (e.g., active, deleted). */ status: string; /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ expires_after?: ContainerRetrieveResponse.ExpiresAfter; } export declare namespace ContainerRetrieveResponse { /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ interface ExpiresAfter { /** * The reference point for the expiration. */ anchor?: 'last_active_at'; /** * The number of minutes after the anchor before the container expires. */ minutes?: number; } } export interface ContainerListResponse { /** * Unique identifier for the container. */ id: string; /** * Unix timestamp (in seconds) when the container was created. */ created_at: number; /** * Name of the container. */ name: string; /** * The type of this object. */ object: string; /** * Status of the container (e.g., active, deleted). */ status: string; /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ expires_after?: ContainerListResponse.ExpiresAfter; } export declare namespace ContainerListResponse { /** * The container will expire after this time period. The anchor is the reference * point for the expiration. The minutes is the number of minutes after the anchor * before the container expires. */ interface ExpiresAfter { /** * The reference point for the expiration. */ anchor?: 'last_active_at'; /** * The number of minutes after the anchor before the container expires. */ minutes?: number; } } export interface ContainerCreateParams { /** * Name of the container to create. */ name: string; /** * Container expiration time in seconds relative to the 'anchor' time. */ expires_after?: ContainerCreateParams.ExpiresAfter; /** * IDs of files to copy to the container. */ file_ids?: Array; } export declare namespace ContainerCreateParams { /** * Container expiration time in seconds relative to the 'anchor' time. */ interface ExpiresAfter { /** * Time anchor for the expiration time. Currently only 'last_active_at' is * supported. */ anchor: 'last_active_at'; minutes: number; } } export interface ContainerListParams extends CursorPageParams { /** * Sort order by the `created_at` timestamp of the objects. `asc` for ascending * order and `desc` for descending order. */ order?: 'asc' | 'desc'; } export declare namespace Containers { export { type ContainerCreateResponse as ContainerCreateResponse, type ContainerRetrieveResponse as ContainerRetrieveResponse, type ContainerListResponse as ContainerListResponse, ContainerListResponsesPage as ContainerListResponsesPage, type ContainerCreateParams as ContainerCreateParams, type ContainerListParams as ContainerListParams, }; export { Files as Files, type FileCreateResponse as FileCreateResponse, type FileRetrieveResponse as FileRetrieveResponse, type FileListResponse as FileListResponse, FileListResponsesPage as FileListResponsesPage, type FileCreateParams as FileCreateParams, type FileListParams as FileListParams, }; } //# sourceMappingURL=containers.d.ts.map