/// import { Server } from 'http'; import { Connect } from '@ream/server'; import { SetRequired } from './base'; import { UserConfig, ViteDevServer } from 'vite'; declare type State = { constants: { [k: string]: string; }; pluginsFiles: { 'enhance-app': Set; 'enhance-server': Set; }; }; declare class Store { state: State; defineConstant: (name: string, value: any) => void; addPluginFile: (type: keyof State['pluginsFiles'], file: string) => void; } declare type ReamPlugin = { name: string; apply?: (api: Store) => void; }; interface Options { rootDir?: string; srcDir?: string; dev?: boolean; server?: { port?: number | string; }; } declare type ReamConfig = { env?: { [k: string]: string | boolean | number; }; plugins?: Array; imports?: string[]; server?: { port?: number; }; vue?: { runtimeTemplateCompiler?: boolean; }; vite?: (viteConfig: UserConfig, opts: { dev: boolean; ssr?: boolean; }) => void; }; declare class Ream { rootDir: string; srcDir: string; isDev: boolean; config: SetRequired; configPath?: string; store: Store; viteDevServer?: ViteDevServer; constructor(options?: Options, configOverride?: ReamConfig); resolveRootDir(...args: string[]): string; resolveSrcDir(...args: string[]): string; resolveDotReam(...args: string[]): string; resolveOwnDir(...args: string[]): string; resolveInPackage(pkg: string, target: string): string; prepare({ shouldCleanDir, shouldPrepreFiles, }: { shouldCleanDir: boolean; shouldPrepreFiles: boolean; }): Promise; localResolve(name: string): string | undefined; localRequire(name: string): any; getRequestHandler(): Promise; serve(): Promise; build(fullyExport?: boolean): Promise; } export { Options, Ream, ReamConfig, ReamPlugin };