donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
884 lines • 42.6 kB
TypeScript
import { z } from 'zod/v4';
/**
* Test metadata — the reusable configuration from which flows (individual
* runs) are created. Contains everything needed to start a flow except
* execution-specific fields like state, result, and token counts.
*/
export declare const TestMetadataSchema: z.ZodObject<{
target: z.ZodString;
web: z.ZodOptional<z.ZodObject<{
browser: z.ZodObject<{
initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"id">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"name">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"testId">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"json">;
value: z.ZodObject<{
cookies: z.ZodArray<z.ZodType<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown, z.core.$ZodTypeInternals<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown>>>;
origins: z.ZodArray<z.ZodType<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown, z.core.$ZodTypeInternals<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown>>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">>;
persistState: z.ZodOptional<z.ZodBoolean>;
using: z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"device">;
deviceName: z.ZodOptional<z.ZodString>;
headless: z.ZodOptional<z.ZodBoolean>;
proxy: z.ZodOptional<z.ZodObject<{
server: z.ZodString;
bypass: z.ZodOptional<z.ZodString>;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"remoteInstance">;
url: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"browserBase">;
sessionArgs: z.ZodObject<{
projectId: z.ZodString;
extensionId: z.ZodOptional<z.ZodString>;
browserSettings: z.ZodOptional<z.ZodObject<{
context: z.ZodOptional<z.ZodObject<{
id: z.ZodString;
}, z.core.$strip>>;
extensionId: z.ZodOptional<z.ZodString>;
viewport: z.ZodOptional<z.ZodObject<{
width: z.ZodNumber;
height: z.ZodNumber;
}, z.core.$strip>>;
blockAds: z.ZodOptional<z.ZodBoolean>;
solveCaptchas: z.ZodOptional<z.ZodBoolean>;
advancedStealth: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
timeout: z.ZodOptional<z.ZodNumber>;
keepAlive: z.ZodOptional<z.ZodBoolean>;
proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"browserbase">;
geolocation: z.ZodOptional<z.ZodObject<{
country: z.ZodString;
state: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"external">;
server: z.ZodString;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>], "type">>]>;
region: z.ZodOptional<z.ZodString>;
userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">;
}, z.core.$strip>;
targetWebsite: z.ZodString;
}, z.core.$strip>>;
envVars: z.ZodNullable<z.ZodArray<z.ZodString>>;
customTools: z.ZodNullable<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
javascript: z.ZodString;
}, z.core.$strip>>>;
overallObjective: z.ZodNullable<z.ZodString>;
allowedTools: z.ZodArray<z.ZodString>;
resultJsonSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
callbackUrl: z.ZodNullable<z.ZodString>;
maxToolCalls: z.ZodNullable<z.ZodNumber>;
videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
id: z.ZodString;
metadataVersion: z.ZodOptional<z.ZodNumber>;
name: z.ZodNullable<z.ZodString>;
createdWithDonobuVersion: z.ZodOptional<z.ZodString>;
suiteId: z.ZodNullable<z.ZodString>;
nextRunMode: z.ZodEnum<{
AUTONOMOUS: "AUTONOMOUS";
INSTRUCT: "INSTRUCT";
DETERMINISTIC: "DETERMINISTIC";
}>;
provenance: z.ZodOptional<z.ZodObject<{
source: z.ZodEnum<{
DONOBU_STUDIO: "DONOBU_STUDIO";
CODE: "CODE";
}>;
user: z.ZodOptional<z.ZodString>;
os: z.ZodOptional<z.ZodString>;
hostname: z.ZodOptional<z.ZodString>;
ci: z.ZodOptional<z.ZodObject<{
provider: z.ZodOptional<z.ZodString>;
}, z.core.$loose>>;
git: z.ZodOptional<z.ZodObject<{
sha: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
dirty: z.ZodOptional<z.ZodBoolean>;
}, z.core.$loose>>;
}, z.core.$loose>>;
}, z.core.$loose>;
export type TestMetadata = z.infer<typeof TestMetadataSchema>;
/**
* Query parameters for filtering and paginating test results.
*/
export declare const TestsQuerySchema: z.ZodObject<{
name: z.ZodOptional<z.ZodString>;
partialName: z.ZodOptional<z.ZodString>;
suiteId: z.ZodOptional<z.ZodString>;
sortBy: z.ZodOptional<z.ZodEnum<{
name: "name";
created_at: "created_at";
suite_id: "suite_id";
next_run_mode: "next_run_mode";
flow_count: "flow_count";
latest_flow_created_at: "latest_flow_created_at";
}>>;
sortOrder: z.ZodOptional<z.ZodEnum<{
asc: "asc";
desc: "desc";
}>>;
limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
pageToken: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type TestsQuery = z.infer<typeof TestsQuerySchema>;
export declare const TestListItemSchema: z.ZodObject<{
target: z.ZodString;
web: z.ZodOptional<z.ZodObject<{
browser: z.ZodObject<{
initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"id">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"name">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"testId">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"json">;
value: z.ZodObject<{
cookies: z.ZodArray<z.ZodType<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown, z.core.$ZodTypeInternals<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown>>>;
origins: z.ZodArray<z.ZodType<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown, z.core.$ZodTypeInternals<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown>>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">>;
persistState: z.ZodOptional<z.ZodBoolean>;
using: z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"device">;
deviceName: z.ZodOptional<z.ZodString>;
headless: z.ZodOptional<z.ZodBoolean>;
proxy: z.ZodOptional<z.ZodObject<{
server: z.ZodString;
bypass: z.ZodOptional<z.ZodString>;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"remoteInstance">;
url: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"browserBase">;
sessionArgs: z.ZodObject<{
projectId: z.ZodString;
extensionId: z.ZodOptional<z.ZodString>;
browserSettings: z.ZodOptional<z.ZodObject<{
context: z.ZodOptional<z.ZodObject<{
id: z.ZodString;
}, z.core.$strip>>;
extensionId: z.ZodOptional<z.ZodString>;
viewport: z.ZodOptional<z.ZodObject<{
width: z.ZodNumber;
height: z.ZodNumber;
}, z.core.$strip>>;
blockAds: z.ZodOptional<z.ZodBoolean>;
solveCaptchas: z.ZodOptional<z.ZodBoolean>;
advancedStealth: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
timeout: z.ZodOptional<z.ZodNumber>;
keepAlive: z.ZodOptional<z.ZodBoolean>;
proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"browserbase">;
geolocation: z.ZodOptional<z.ZodObject<{
country: z.ZodString;
state: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"external">;
server: z.ZodString;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>], "type">>]>;
region: z.ZodOptional<z.ZodString>;
userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">;
}, z.core.$strip>;
targetWebsite: z.ZodString;
}, z.core.$strip>>;
envVars: z.ZodNullable<z.ZodArray<z.ZodString>>;
customTools: z.ZodNullable<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
javascript: z.ZodString;
}, z.core.$strip>>>;
overallObjective: z.ZodNullable<z.ZodString>;
allowedTools: z.ZodArray<z.ZodString>;
resultJsonSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
callbackUrl: z.ZodNullable<z.ZodString>;
maxToolCalls: z.ZodNullable<z.ZodNumber>;
videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
id: z.ZodString;
metadataVersion: z.ZodOptional<z.ZodNumber>;
name: z.ZodNullable<z.ZodString>;
createdWithDonobuVersion: z.ZodOptional<z.ZodString>;
suiteId: z.ZodNullable<z.ZodString>;
nextRunMode: z.ZodEnum<{
AUTONOMOUS: "AUTONOMOUS";
INSTRUCT: "INSTRUCT";
DETERMINISTIC: "DETERMINISTIC";
}>;
provenance: z.ZodOptional<z.ZodObject<{
source: z.ZodEnum<{
DONOBU_STUDIO: "DONOBU_STUDIO";
CODE: "CODE";
}>;
user: z.ZodOptional<z.ZodString>;
os: z.ZodOptional<z.ZodString>;
hostname: z.ZodOptional<z.ZodString>;
ci: z.ZodOptional<z.ZodObject<{
provider: z.ZodOptional<z.ZodString>;
}, z.core.$loose>>;
git: z.ZodOptional<z.ZodObject<{
sha: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
dirty: z.ZodOptional<z.ZodBoolean>;
}, z.core.$loose>>;
}, z.core.$loose>>;
flowCount: z.ZodNumber;
latestFlow: z.ZodNullable<z.ZodObject<{
target: z.ZodString;
web: z.ZodOptional<z.ZodObject<{
browser: z.ZodObject<{
initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"id">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"name">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"testId">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"json">;
value: z.ZodObject<{
cookies: z.ZodArray<z.ZodType<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown, z.core.$ZodTypeInternals<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown>>>;
origins: z.ZodArray<z.ZodType<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown, z.core.$ZodTypeInternals<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown>>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">>;
persistState: z.ZodOptional<z.ZodBoolean>;
using: z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"device">;
deviceName: z.ZodOptional<z.ZodString>;
headless: z.ZodOptional<z.ZodBoolean>;
proxy: z.ZodOptional<z.ZodObject<{
server: z.ZodString;
bypass: z.ZodOptional<z.ZodString>;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"remoteInstance">;
url: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"browserBase">;
sessionArgs: z.ZodObject<{
projectId: z.ZodString;
extensionId: z.ZodOptional<z.ZodString>;
browserSettings: z.ZodOptional<z.ZodObject<{
context: z.ZodOptional<z.ZodObject<{
id: z.ZodString;
}, z.core.$strip>>;
extensionId: z.ZodOptional<z.ZodString>;
viewport: z.ZodOptional<z.ZodObject<{
width: z.ZodNumber;
height: z.ZodNumber;
}, z.core.$strip>>;
blockAds: z.ZodOptional<z.ZodBoolean>;
solveCaptchas: z.ZodOptional<z.ZodBoolean>;
advancedStealth: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
timeout: z.ZodOptional<z.ZodNumber>;
keepAlive: z.ZodOptional<z.ZodBoolean>;
proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"browserbase">;
geolocation: z.ZodOptional<z.ZodObject<{
country: z.ZodString;
state: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"external">;
server: z.ZodString;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>], "type">>]>;
region: z.ZodOptional<z.ZodString>;
userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">;
}, z.core.$strip>;
targetWebsite: z.ZodString;
}, z.core.$strip>>;
envVars: z.ZodNullable<z.ZodArray<z.ZodString>>;
customTools: z.ZodNullable<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
javascript: z.ZodString;
}, z.core.$strip>>>;
overallObjective: z.ZodNullable<z.ZodString>;
allowedTools: z.ZodArray<z.ZodString>;
resultJsonSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
callbackUrl: z.ZodNullable<z.ZodString>;
maxToolCalls: z.ZodNullable<z.ZodNumber>;
videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
id: z.ZodString;
metadataVersion: z.ZodOptional<z.ZodNumber>;
name: z.ZodNullable<z.ZodString>;
createdWithDonobuVersion: z.ZodString;
testId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
gptConfigName: z.ZodNullable<z.ZodString>;
hasGptConfigNameOverride: z.ZodBoolean;
defaultMessageDuration: z.ZodNullable<z.ZodNumber>;
runMode: z.ZodEnum<{
AUTONOMOUS: "AUTONOMOUS";
INSTRUCT: "INSTRUCT";
DETERMINISTIC: "DETERMINISTIC";
}>;
isControlPanelEnabled: z.ZodBoolean;
result: z.ZodNullable<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
inputTokensUsed: z.ZodNumber;
completionTokensUsed: z.ZodNumber;
startedAt: z.ZodNullable<z.ZodNumber>;
completedAt: z.ZodNullable<z.ZodNumber>;
state: z.ZodEnum<{
UNSTARTED: "UNSTARTED";
INITIALIZING: "INITIALIZING";
QUERYING_LLM_FOR_NEXT_ACTION: "QUERYING_LLM_FOR_NEXT_ACTION";
WAITING_ON_USER_FOR_NEXT_ACTION: "WAITING_ON_USER_FOR_NEXT_ACTION";
PAUSED: "PAUSED";
RESUMING: "RESUMING";
RUNNING_ACTION: "RUNNING_ACTION";
FAILED: "FAILED";
SUCCESS: "SUCCESS";
}>;
nextState: z.ZodNullable<z.ZodEnum<{
UNSTARTED: "UNSTARTED";
INITIALIZING: "INITIALIZING";
QUERYING_LLM_FOR_NEXT_ACTION: "QUERYING_LLM_FOR_NEXT_ACTION";
WAITING_ON_USER_FOR_NEXT_ACTION: "WAITING_ON_USER_FOR_NEXT_ACTION";
PAUSED: "PAUSED";
RESUMING: "RESUMING";
RUNNING_ACTION: "RUNNING_ACTION";
FAILED: "FAILED";
SUCCESS: "SUCCESS";
}>>;
provenance: z.ZodOptional<z.ZodObject<{
source: z.ZodEnum<{
DONOBU_STUDIO: "DONOBU_STUDIO";
CODE: "CODE";
}>;
user: z.ZodOptional<z.ZodString>;
os: z.ZodOptional<z.ZodString>;
hostname: z.ZodOptional<z.ZodString>;
ci: z.ZodOptional<z.ZodObject<{
provider: z.ZodOptional<z.ZodString>;
}, z.core.$loose>>;
git: z.ZodOptional<z.ZodObject<{
sha: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
dirty: z.ZodOptional<z.ZodBoolean>;
}, z.core.$loose>>;
}, z.core.$loose>>;
}, z.core.$loose>>;
}, z.core.$loose>;
export type TestListItem = z.infer<typeof TestListItemSchema>;
export declare const TestListItemPaginatedResultSchema: z.ZodObject<{
items: z.ZodArray<z.ZodObject<{
target: z.ZodString;
web: z.ZodOptional<z.ZodObject<{
browser: z.ZodObject<{
initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"id">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"name">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"testId">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"json">;
value: z.ZodObject<{
cookies: z.ZodArray<z.ZodType<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown, z.core.$ZodTypeInternals<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown>>>;
origins: z.ZodArray<z.ZodType<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown, z.core.$ZodTypeInternals<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown>>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">>;
persistState: z.ZodOptional<z.ZodBoolean>;
using: z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"device">;
deviceName: z.ZodOptional<z.ZodString>;
headless: z.ZodOptional<z.ZodBoolean>;
proxy: z.ZodOptional<z.ZodObject<{
server: z.ZodString;
bypass: z.ZodOptional<z.ZodString>;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"remoteInstance">;
url: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"browserBase">;
sessionArgs: z.ZodObject<{
projectId: z.ZodString;
extensionId: z.ZodOptional<z.ZodString>;
browserSettings: z.ZodOptional<z.ZodObject<{
context: z.ZodOptional<z.ZodObject<{
id: z.ZodString;
}, z.core.$strip>>;
extensionId: z.ZodOptional<z.ZodString>;
viewport: z.ZodOptional<z.ZodObject<{
width: z.ZodNumber;
height: z.ZodNumber;
}, z.core.$strip>>;
blockAds: z.ZodOptional<z.ZodBoolean>;
solveCaptchas: z.ZodOptional<z.ZodBoolean>;
advancedStealth: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
timeout: z.ZodOptional<z.ZodNumber>;
keepAlive: z.ZodOptional<z.ZodBoolean>;
proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"browserbase">;
geolocation: z.ZodOptional<z.ZodObject<{
country: z.ZodString;
state: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"external">;
server: z.ZodString;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>], "type">>]>;
region: z.ZodOptional<z.ZodString>;
userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">;
}, z.core.$strip>;
targetWebsite: z.ZodString;
}, z.core.$strip>>;
envVars: z.ZodNullable<z.ZodArray<z.ZodString>>;
customTools: z.ZodNullable<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
javascript: z.ZodString;
}, z.core.$strip>>>;
overallObjective: z.ZodNullable<z.ZodString>;
allowedTools: z.ZodArray<z.ZodString>;
resultJsonSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
callbackUrl: z.ZodNullable<z.ZodString>;
maxToolCalls: z.ZodNullable<z.ZodNumber>;
videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
id: z.ZodString;
metadataVersion: z.ZodOptional<z.ZodNumber>;
name: z.ZodNullable<z.ZodString>;
createdWithDonobuVersion: z.ZodOptional<z.ZodString>;
suiteId: z.ZodNullable<z.ZodString>;
nextRunMode: z.ZodEnum<{
AUTONOMOUS: "AUTONOMOUS";
INSTRUCT: "INSTRUCT";
DETERMINISTIC: "DETERMINISTIC";
}>;
provenance: z.ZodOptional<z.ZodObject<{
source: z.ZodEnum<{
DONOBU_STUDIO: "DONOBU_STUDIO";
CODE: "CODE";
}>;
user: z.ZodOptional<z.ZodString>;
os: z.ZodOptional<z.ZodString>;
hostname: z.ZodOptional<z.ZodString>;
ci: z.ZodOptional<z.ZodObject<{
provider: z.ZodOptional<z.ZodString>;
}, z.core.$loose>>;
git: z.ZodOptional<z.ZodObject<{
sha: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
dirty: z.ZodOptional<z.ZodBoolean>;
}, z.core.$loose>>;
}, z.core.$loose>>;
flowCount: z.ZodNumber;
latestFlow: z.ZodNullable<z.ZodObject<{
target: z.ZodString;
web: z.ZodOptional<z.ZodObject<{
browser: z.ZodObject<{
initialState: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"id">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"name">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"testId">;
value: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"json">;
value: z.ZodObject<{
cookies: z.ZodArray<z.ZodType<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown, z.core.$ZodTypeInternals<{
name: string;
value: string;
domain: string;
path: string;
expires: number;
httpOnly: boolean;
secure: boolean;
sameSite: "Strict" | "Lax" | "None";
}, unknown>>>;
origins: z.ZodArray<z.ZodType<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown, z.core.$ZodTypeInternals<{
origin: string;
localStorage: Array<{
name: string;
value: string;
}>;
} & {
sessionStorage?: Array<{
name: string;
value: string;
}>;
}, unknown>>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">>;
persistState: z.ZodOptional<z.ZodBoolean>;
using: z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"device">;
deviceName: z.ZodOptional<z.ZodString>;
headless: z.ZodOptional<z.ZodBoolean>;
proxy: z.ZodOptional<z.ZodObject<{
server: z.ZodString;
bypass: z.ZodOptional<z.ZodString>;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"remoteInstance">;
url: z.ZodString;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"browserBase">;
sessionArgs: z.ZodObject<{
projectId: z.ZodString;
extensionId: z.ZodOptional<z.ZodString>;
browserSettings: z.ZodOptional<z.ZodObject<{
context: z.ZodOptional<z.ZodObject<{
id: z.ZodString;
}, z.core.$strip>>;
extensionId: z.ZodOptional<z.ZodString>;
viewport: z.ZodOptional<z.ZodObject<{
width: z.ZodNumber;
height: z.ZodNumber;
}, z.core.$strip>>;
blockAds: z.ZodOptional<z.ZodBoolean>;
solveCaptchas: z.ZodOptional<z.ZodBoolean>;
advancedStealth: z.ZodOptional<z.ZodBoolean>;
}, z.core.$strip>>;
timeout: z.ZodOptional<z.ZodNumber>;
keepAlive: z.ZodOptional<z.ZodBoolean>;
proxies: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
type: z.ZodLiteral<"browserbase">;
geolocation: z.ZodOptional<z.ZodObject<{
country: z.ZodString;
state: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>, z.ZodObject<{
type: z.ZodLiteral<"external">;
server: z.ZodString;
username: z.ZodOptional<z.ZodString>;
password: z.ZodOptional<z.ZodString>;
domainPattern: z.ZodOptional<z.ZodString>;
}, z.core.$strip>], "type">>]>;
region: z.ZodOptional<z.ZodString>;
userMetadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
}, z.core.$strip>;
}, z.core.$strip>], "type">;
}, z.core.$strip>;
targetWebsite: z.ZodString;
}, z.core.$strip>>;
envVars: z.ZodNullable<z.ZodArray<z.ZodString>>;
customTools: z.ZodNullable<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
javascript: z.ZodString;
}, z.core.$strip>>>;
overallObjective: z.ZodNullable<z.ZodString>;
allowedTools: z.ZodArray<z.ZodString>;
resultJsonSchema: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
callbackUrl: z.ZodNullable<z.ZodString>;
maxToolCalls: z.ZodNullable<z.ZodNumber>;
videoDisabled: z.ZodNullable<z.ZodOptional<z.ZodBoolean>>;
id: z.ZodString;
metadataVersion: z.ZodOptional<z.ZodNumber>;
name: z.ZodNullable<z.ZodString>;
createdWithDonobuVersion: z.ZodString;
testId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
gptConfigName: z.ZodNullable<z.ZodString>;
hasGptConfigNameOverride: z.ZodBoolean;
defaultMessageDuration: z.ZodNullable<z.ZodNumber>;
runMode: z.ZodEnum<{
AUTONOMOUS: "AUTONOMOUS";
INSTRUCT: "INSTRUCT";
DETERMINISTIC: "DETERMINISTIC";
}>;
isControlPanelEnabled: z.ZodBoolean;
result: z.ZodNullable<z.ZodUnion<readonly [z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>]>>;
inputTokensUsed: z.ZodNumber;
completionTokensUsed: z.ZodNumber;
startedAt: z.ZodNullable<z.ZodNumber>;
completedAt: z.ZodNullable<z.ZodNumber>;
state: z.ZodEnum<{
UNSTARTED: "UNSTARTED";
INITIALIZING: "INITIALIZING";
QUERYING_LLM_FOR_NEXT_ACTION: "QUERYING_LLM_FOR_NEXT_ACTION";
WAITING_ON_USER_FOR_NEXT_ACTION: "WAITING_ON_USER_FOR_NEXT_ACTION";
PAUSED: "PAUSED";
RESUMING: "RESUMING";
RUNNING_ACTION: "RUNNING_ACTION";
FAILED: "FAILED";
SUCCESS: "SUCCESS";
}>;
nextState: z.ZodNullable<z.ZodEnum<{
UNSTARTED: "UNSTARTED";
INITIALIZING: "INITIALIZING";
QUERYING_LLM_FOR_NEXT_ACTION: "QUERYING_LLM_FOR_NEXT_ACTION";
WAITING_ON_USER_FOR_NEXT_ACTION: "WAITING_ON_USER_FOR_NEXT_ACTION";
PAUSED: "PAUSED";
RESUMING: "RESUMING";
RUNNING_ACTION: "RUNNING_ACTION";
FAILED: "FAILED";
SUCCESS: "SUCCESS";
}>>;
provenance: z.ZodOptional<z.ZodObject<{
source: z.ZodEnum<{
DONOBU_STUDIO: "DONOBU_STUDIO";
CODE: "CODE";
}>;
user: z.ZodOptional<z.ZodString>;
os: z.ZodOptional<z.ZodString>;
hostname: z.ZodOptional<z.ZodString>;
ci: z.ZodOptional<z.ZodObject<{
provider: z.ZodOptional<z.ZodString>;
}, z.core.$loose>>;
git: z.ZodOptional<z.ZodObject<{
sha: z.ZodOptional<z.ZodString>;
branch: z.ZodOptional<z.ZodString>;
dirty: z.ZodOptional<z.ZodBoolean>;
}, z.core.$loose>>;
}, z.core.$loose>>;
}, z.core.$loose>>;
}, z.core.$loose>>;
nextPageToken: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
//# sourceMappingURL=TestMetadata.d.ts.map