···8181 }
8282 }
8383 }
8484+ ["sandboxViewDetailed"] = new ObjectType {
8585+ type = "object"
8686+ properties {
8787+ ["name"] = new StringType {
8888+ type = "string"
8989+ maxLength = 50
9090+ description = "Name of the sandbox"
9191+ }
9292+ ["provider"] = new StringType {
9393+ type = "string"
9494+ maxLength = 50
9595+ description = "The provider of the sandbox, e.g. 'daytona', 'vercel', 'cloudflare', etc."
9696+ }
9797+ ["description"] = new StringType {
9898+ type = "string"
9999+ maxLength = 3000
100100+ maxGraphemes = 300
101101+ }
102102+ ["status"] = new StringType {
103103+ type = "string"
104104+ description = "The current status of the sandbox, e.g. 'STARTED', 'STOPPED', etc."
105105+ }
106106+ ["startedAt"] = new StringType {
107107+ type = "string"
108108+ format = "datetime"
109109+ }
110110+ ["timeout"] = new IntegerType {
111111+ type = "integer"
112112+ description = "The sandbox timeout in seconds"
113113+ }
114114+ ["baseSandbox"] = new Ref {
115115+ type = "ref"
116116+ ref = "io.pocketenv.sandbox.defs#sandboxViewBasic"
117117+ }
118118+ ["website"] = new StringType {
119119+ type = "string"
120120+ format = "uri"
121121+ description = "Any URI related to the sandbox"
122122+ }
123123+ ["logo"] = new StringType {
124124+ type = "string"
125125+ format = "uri"
126126+ description = "URI to an image logo for the sandbox"
127127+ }
128128+ ["topics"] = new Array {
129129+ type = "array"
130130+ items = new StringType {
131131+ type = "string"
132132+ minLength = 1
133133+ maxLength = 50
134134+ }
135135+ maxLength = 50
136136+ }
137137+ ["repo"] = new StringType {
138138+ type = "string"
139139+ description = "A git repository URL to clone into the sandbox, e.g. a GitHub/Tangled repo."
140140+ format = "uri"
141141+ }
142142+ ["readme"] = new StringType {
143143+ type = "string"
144144+ description = "A URI to a README for the sandbox."
145145+ format = "uri"
146146+ }
147147+ ["vcpus"] = new IntegerType {
148148+ type = "integer"
149149+ description = "Number of virtual CPUs allocated to the sandbox"
150150+ }
151151+ ["memory"] = new IntegerType {
152152+ type = "integer"
153153+ description = "Amount of memory in GB allocated to the sandbox"
154154+ }
155155+ ["disk"] = new IntegerType {
156156+ type = "integer"
157157+ description = "Amount of disk space in GB allocated to the sandbox"
158158+ }
159159+ ["ports"] = new Array {
160160+ type = "array"
161161+ items = new IntegerType {
162162+ type = "integer"
163163+ minimum = 1
164164+ maximum = 65535
165165+ }
166166+ maxLength = 100
167167+ }
168168+ ["installs"] = new IntegerType {
169169+ type = "integer"
170170+ description = "Number of times the sandbox has been installed by users."
171171+ }
172172+ ["createdAt"] = new StringType {
173173+ type = "string"
174174+ format = "datetime"
175175+ }
176176+ }
177177+ }
84178 ["secret"] = new ObjectType {
85179 type = "object"
86180 required = List("name", "value")
···4646 return lexicons.validate("io.pocketenv.sandbox.defs#sandboxViewBasic", v);
4747}
48484949+export interface SandboxViewDetailed {
5050+ /** Name of the sandbox */
5151+ name?: string;
5252+ /** The provider of the sandbox, e.g. 'daytona', 'vercel', 'cloudflare', etc. */
5353+ provider?: string;
5454+ description?: string;
5555+ /** The current status of the sandbox, e.g. 'STARTED', 'STOPPED', etc. */
5656+ status?: string;
5757+ startedAt?: string;
5858+ /** The sandbox timeout in seconds */
5959+ timeout?: number;
6060+ baseSandbox?: SandboxViewBasic;
6161+ /** Any URI related to the sandbox */
6262+ website?: string;
6363+ /** URI to an image logo for the sandbox */
6464+ logo?: string;
6565+ topics?: string[];
6666+ /** A git repository URL to clone into the sandbox, e.g. a GitHub/Tangled repo. */
6767+ repo?: string;
6868+ /** A URI to a README for the sandbox. */
6969+ readme?: string;
7070+ /** Number of virtual CPUs allocated to the sandbox */
7171+ vcpus?: number;
7272+ /** Amount of memory in GB allocated to the sandbox */
7373+ memory?: number;
7474+ /** Amount of disk space in GB allocated to the sandbox */
7575+ disk?: number;
7676+ ports?: number[];
7777+ /** Number of times the sandbox has been installed by users. */
7878+ installs?: number;
7979+ createdAt?: string;
8080+ [k: string]: unknown;
8181+}
8282+8383+export function isSandboxViewDetailed(v: unknown): v is SandboxViewDetailed {
8484+ return (
8585+ isObj(v) &&
8686+ hasProp(v, "$type") &&
8787+ v.$type === "io.pocketenv.sandbox.defs#sandboxViewDetailed"
8888+ );
8989+}
9090+9191+export function validateSandboxViewDetailed(v: unknown): ValidationResult {
9292+ return lexicons.validate("io.pocketenv.sandbox.defs#sandboxViewDetailed", v);
9393+}
9494+4995export interface Secret {
5096 /** Name of the secret, e.g. 'DATABASE_URL', 'SSH_KEY', etc. */
5197 name: string;