import { ElementDefinition } from 'cytoscape'; import http from 'http'; import { Environment, Interpreter, List, NativeFunction, Natives, Node, Package, Problem } from 'wollok-ts'; import { Asset } from 'wollok-web-tools'; export declare const ENTER = "\n"; export declare const programIcon = "\uD83D\uDE80"; export declare const gameIcon = "\uD83D\uDC7E"; export declare const testIcon = "\uD83E\uDDEA"; export declare const replIcon = "\uD83D\uDDA5\uFE0F"; export declare const buildEnvironmentIcon = "\uD83C\uDF0F"; export declare const lintIcon = "\uD83D\uDD26"; export declare const astIcon = "\uD83C\uDF32"; export declare const folderIcon = "\uD83D\uDDC2\uFE0F"; export declare const diagramIcon = "\uD83D\uDD00"; export declare const errorIcon = "\u274C"; export declare const warningIcon = "\u26A0\uFE0F"; export declare const imageIcon = "\uD83C\uDFA8"; export declare const soundIcon = "\uD83D\uDD09"; export declare const boardIcon = "\uD83D\uDCCF"; export declare const projectIcon = "\uD83D\uDCC1"; export declare const keyboardIcon = "\uD83C\uDFB9"; export declare class Project { readonly project: string; private _properties?; constructor(project: string); get sourceFolder(): string; get packageJsonPath(): string; get properties(): any; private safeLoadJson; get nativesFolder(): string; readNatives(): Promise; } export declare function relativeFilePath(project: string, filePath: string): string; export declare function getFQN(project: string, filePath: string): string; export type FileContent = { name: string; content: string; }; export declare const createFolderIfNotExists: (folder: string) => void; export declare function buildEnvironmentForProject(project: string, files?: string[]): Promise; export declare enum ValidationAction { SKIP_VALIDATION = 0, RETURN_ERRORS = 1, THROW_ON_ERRORS = 2 } export declare const validateEnvironment: (node: Node, validationAction?: ValidationAction) => List; export declare const buildEnvironmentCommand: (project: string, skipValidations?: boolean) => Promise; export declare const handleError: (error: any) => void; export declare function readNatives(nativeFolder: string): Promise; export declare const valueDescription: (val: any) => string; export declare const successDescription: (description: string) => string; export declare const sanitizeStackTrace: (e?: Error) => string[]; export declare const warningDescription: (description: string) => string; export declare const assertionError: (error: Error) => boolean; export declare const failureDescription: (description: string, error?: Error) => string; export declare const problemDescription: (problem: Problem) => string; export declare const publicPath: (...paths: string[]) => string; interface Named { name: string; } export declare const isValidAsset: (file: Named) => boolean; export declare const isValidImage: (file: Named) => boolean; export declare const isValidSound: (file: Named) => boolean; export declare const validateName: (name: string) => void; export declare function isREPLConstant(environment: Environment, localName: string): boolean; export declare const buildNativesForGame: (project: Project, serve: NativeFunction) => Promise; export declare const serverError: ({ port, code }: { port: string; code: string; }) => void; export declare const nextPort: (port: string) => string; export type DynamicDiagramClient = { onReload: (interpreter: Interpreter) => void; enabled: boolean; server?: http.Server; }; export declare function getDynamicDiagram(interpreter: Interpreter, rootFQN?: Package): ElementDefinition[]; export type DynamicDiagramOptions = { host: string; port: string; }; export declare function initializeDynamicDiagram(_interpreter: Interpreter, options: DynamicDiagramOptions, rootPackage: Package, startDiagram?: boolean): DynamicDiagramClient; export declare const getAssetsFolder: (project: Project, assets: string) => string; export declare const getSoundsFolder: (projectPath: string, assetsOptions: string) => string; export declare const getAllAssets: (projectPath: string, assetsFolder: string) => Asset[]; export {};