donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
26 lines • 1.3 kB
TypeScript
import { FlowMetadata } from '../models/FlowMetadata';
import { ProposedToolCall } from '../models/ProposedToolCall';
import { AgentsManager } from './AgentsManager';
import { GptConfigsManager } from './GptConfigsManager';
export declare class CodeGenerator {
private readonly gptConfigsManager;
private readonly agentsManager;
constructor(gptConfigsManager: GptConfigsManager, agentsManager: AgentsManager);
/** Creates a Node.js Microsoft Playwright script to replay the given flow. */
getFlowAsPlaywrightScript(flowMetadata: FlowMetadata, toolCalls: ProposedToolCall<any>[]): Promise<string>;
/**
* Maps a proposed Donobu tool call to valid NodeJS Playwright code that uses
* the `DonobuExtendedPage` extension.
*/
static convertProposedToolCallToPlaywrightCode(proposedToolCall: ProposedToolCall<any>): string;
private prettifyCode;
/**
* Sanitizes a JSON string to be safely used within a template literal (backtick string)
* Prevents both backtick termination and string interpolation from triggering
*
* @param jsonString - The JSON string to sanitize
* @returns The sanitized string that can be safely used within backticks
*/
private sanitizeForTemplateLiteral;
}
//# sourceMappingURL=CodeGenerator.d.ts.map