import * as magic_string from 'magic-string';
import { PublicPluginAPI, ComponentInfo } from 'unplugin-vue-components/types';
import { AppConfig } from '../shared.js';
import '~/site';
import 'vite';
import 'rollup';
import 'vue';
import '@vitejs/plugin-vue';
import 'unplugin-vue-components/vite';
import 'vite-plugin-solid';
import '@sveltejs/vite-plugin-svelte';
import '@preact/preset-vite';
import 'vue-router';
import '@unhead/vue';
import '@islands/pages';
import '@islands/mdx';
import '@islands/hydration/dist/vanilla';

declare const unresolvedIslandKey = "__viteIslandComponent";
declare function wrapLayout(code: string, filename: string): Promise<{
    code: string;
    map: magic_string.SourceMap;
} | undefined>;
declare function wrapIslandsInSFC(config: AppConfig, code: string, filename: string): Promise<{
    code: string;
    map: magic_string.SourceMap;
} | undefined>;
declare function resolveComponent(components: PublicPluginAPI, tag: string, filename: string, counter: number): Promise<ComponentInfo>;
declare function resolveImportPath(config: AppConfig, info: ComponentInfo, importer: string): Promise<ComponentInfo>;

export { resolveComponent, resolveImportPath, unresolvedIslandKey, wrapIslandsInSFC, wrapLayout };
