UNPKG

@elimeleth/vct-flow

Version:

Crea un archivo app.ts, coloca el codigo de abajo alli y luego puedes correrlo con `npx tsx src/app.ts`

96 lines (95 loc) 4.09 kB
import { CrontabSchedule, HttpRequestOptions, PrinterFunction, WorkflowKey } from './types'; import { Workflow } from './core'; import { ProviderClass } from './io/providerClass'; import { AxiosRequestConfig } from 'axios'; /** * Genera un UUID único con posibilidad de tener un prefijo. * @param prefix Prefijo opcional para el UUID. * @returns El UUID generado. */ declare const generateRef: (prefix?: string) => string; /** * Genera un timestamp en milisegundos sin prefijo hex. * @returns El timestamp generado. */ declare const generateTime: () => number; /** * Genera un HASH MD5 a partir de un objeto serializado como cadena JSON. * @param param0 Objeto con propiedades index, answer y keyword. * @returns El HASH MD5 generado. */ declare const generateRefSerialize: ({ index, answer, keyword, }: { index: number; answer: string | string[]; keyword?: string | string[]; }) => string; /** * Generamos un UUID único con posibilidad de tener un prefijo * @param prefix - Prefijo opcional para el UUID * @returns Un UUID único, opcionalmente con prefijo */ declare const generateRefProvider: (prefix?: string) => string; /** * Encriptar data * @param data - Datos a encriptar * @returns Datos encriptados en base64 */ declare const encryptData: (data: string) => string; /** * Desencriptar data * @param encryptedData - Datos encriptados en base64 * @returns Datos desencriptados o 'FAIL' en caso de error */ declare const decryptData: (encryptedData: string) => string; /** * * @param prefix * @returns */ declare const generateRegex: (prefix: string) => RegExp; declare function sleep(ms: number): Promise<void>; /** * * @param message * @param title * @param cName */ declare const printer: PrinterFunction; declare function saveCheckpointInDatabase(serializedData: string): Promise<void>; declare function loadCheckpointFromDatabase(thread_id: string): Promise<string>; declare function isValidCrontab(schedule: CrontabSchedule): boolean; declare function toCrontabString(schedule: CrontabSchedule): string; declare function dynamicDelay(min: number, max: number, total_tokens: number): number; declare function createDirectoryIfNotExists(directory: string): Promise<void>; declare function makeHttpRequest<T>(options: HttpRequestOptions<T>): Promise<T>; declare function event_to_regexp(ev: WorkflowKey): WorkflowKey; declare function deepClone(obj: any): any; declare function loadFlows(): Promise<Workflow<string>[]>; declare function loadProvider(): Promise<Partial<ProviderClass>>; declare const generalDownload: (url: string, pathToSave?: string) => Promise<string>; declare function convertOpusToMp3(inputPath: string): Promise<string>; declare function convertToOgg(inputPath: string): Promise<string>; export interface FormatOptions { code: string; ext: 'mp4' | 'opus' | 'mp3'; } declare const convertTo: (filePath: string, format?: FormatOptions["ext"]) => Promise<string>; declare function sendToOpenaiWhisper(mp3FilePath: string, model?: "whisper-1", extra?: { prompt: string; }): Promise<string>; declare function sendToGroqWhisper(mp3FilePath: string, model?: "whisper-large-v3-turbo" | "whisper-large-v3" | "distil-whisper-large-v3-en", extra?: { prompt: string; }): Promise<string>; declare function validateEnvVar(envVar: string | string[]): void; export { validateEnvVar, toCrontabString, isValidCrontab, convertToOgg, convertTo, convertOpusToMp3, sendToGroqWhisper, sendToOpenaiWhisper, generalDownload, sleep, printer, saveCheckpointInDatabase, loadCheckpointFromDatabase, dynamicDelay, createDirectoryIfNotExists, makeHttpRequest, event_to_regexp, deepClone, loadFlows, loadProvider, generateRef, generateRefSerialize, generateTime, generateRegex, generateRefProvider, encryptData, decryptData }; type ApiError = { details?: unknown; err_code?: string | number; message: string; }; export type ApiResponse<T> = { data: T | null; error?: ApiError | null; status: number; }; export declare function apiRequest<T = unknown>(config: AxiosRequestConfig): Promise<ApiResponse<T>>;