import { Hookable } from 'hookable'; import * as monaco from 'monaco-editor'; export type Hooks = Hookable, string>; export type Plugin = (hooks: Hooks) => void; export interface ComplierPluginParams { fileMap: Record; result: { errors: Error[]; }; entry: string; iframe: HTMLIFrameElement; render: boolean; } export interface ComplierPluginResult { modules: Array; styles: Array; links: Array; html: Array; } export declare class File { filename: string; code: string; compiled: { js: string; css: string; }; editorViewState: monaco.editor.ICodeEditorViewState | null; constructor(filename: string, code?: string); }