## API Report File for "@qwik.dev/qwik-vite"

> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).

```ts

import { EntryStrategy } from '@qwik.dev/optimizer';
import { Optimizer } from '@qwik.dev/optimizer';
import { OptimizerOptions } from '@qwik.dev/optimizer';
import type { Plugin as Plugin_2 } from 'vite';
import { SegmentAnalysis } from '@qwik.dev/optimizer';
import { TransformModule } from '@qwik.dev/optimizer';
import { TransformModuleInput } from '@qwik.dev/optimizer';

// @public
export type BundleGraphAdder = (manifest: QwikManifest) => Record<string, {
    imports?: string[];
    dynamicImports?: string[];
}>;

// @public
export enum ExperimentalFeatures {
    blockSSR = "blockSSR",
    each = "each",
    insights = "insights",
    noSPA = "noSPA",
    show = "show",
    suspense = "suspense",
    valibot = "valibot"
}

// @public (undocumented)
export interface GlobalInjections {
    // (undocumented)
    attributes?: {
        [key: string]: string;
    };
    // (undocumented)
    location: 'head' | 'body';
    // (undocumented)
    tag: string;
}

// @public (undocumented)
export interface QwikAsset {
    name: string | undefined;
    size: number;
}

// @public (undocumented)
export type QwikBuildMode = 'production' | 'development';

// @public (undocumented)
export type QwikBuildTarget = 'client' | 'ssr' | 'lib' | 'test';

// @public (undocumented)
export interface QwikBundle {
    dynamicImports?: string[];
    imports?: string[];
    interactivity?: number;
    origins?: string[];
    size: number;
    symbols?: string[];
    total: number;
}

// @public
export type QwikBundleGraph = Array<string | number>;

// @public
export interface QwikManifest {
    assets?: {
        [fileName: string]: QwikAsset;
    };
    bundleGraph?: QwikBundleGraph;
    bundleGraphAsset?: string;
    bundles: {
        [fileName: string]: QwikBundle;
    };
    core?: string;
    injections?: GlobalInjections[];
    manifestHash: string;
    mapping: {
        [symbolName: string]: string;
    };
    options?: {
        target?: string;
        buildMode?: string;
        entryStrategy?: {
            type: EntryStrategy['type'];
        };
    };
    platform?: {
        [name: string]: string;
    };
    preloader?: string;
    qwikLoader?: string;
    symbols: {
        [symbolName: string]: QwikSymbol;
    };
    version: string;
}

// @public (undocumented)
export function qwikRollup(qwikRollupOpts?: QwikRollupPluginOptions): any;

// @public (undocumented)
export interface QwikRollupPluginOptions {
    buildMode?: QwikBuildMode;
    // (undocumented)
    csr?: boolean;
    debug?: boolean;
    entryStrategy?: EntryStrategy;
    experimental?: (keyof typeof ExperimentalFeatures)[];
    lint?: boolean;
    manifestInput?: QwikManifest;
    manifestOutput?: (manifest: QwikManifest) => Promise<void> | void;
    // (undocumented)
    optimizerOptions?: OptimizerOptions;
    rootDir?: string;
    srcDir?: string;
    srcInputs?: TransformModuleInput[] | null;
    target?: QwikBuildTarget;
    transformedModuleOutput?: ((transformedModules: TransformModule[]) => Promise<void> | void) | null;
}

// @public (undocumented)
export interface QwikSymbol {
    // (undocumented)
    canonicalFilename: string;
    captureNames?: string[];
    captures: boolean;
    // (undocumented)
    ctxKind: 'function' | 'eventHandler';
    // (undocumented)
    ctxName: string;
    // (undocumented)
    displayName: string;
    // (undocumented)
    hash: string;
    // (undocumented)
    loc: [number, number];
    // (undocumented)
    origin: string;
    paramNames?: string[];
    // (undocumented)
    parent: string | null;
}

// @public
export function qwikVite(qwikViteOpts?: QwikVitePluginOptions): any;

// Warning: (ae-forgotten-export) The symbol "P" needs to be exported by the entry point index.d.ts
//
// @public
export type QwikVitePlugin = P<QwikVitePluginApi> & {
    name: 'vite-plugin-qwik';
};

// @public (undocumented)
export interface QwikVitePluginApi {
    // (undocumented)
    getClientOutDir: () => string | null;
    // (undocumented)
    getClientPublicOutDir: () => string | null;
    // (undocumented)
    getManifest: () => QwikManifest | null;
    // (undocumented)
    getOptimizer: () => Optimizer | null;
    // Warning: (ae-forgotten-export) The symbol "NormalizedQwikPluginOptions" needs to be exported by the entry point index.d.ts
    //
    // (undocumented)
    getOptions: () => NormalizedQwikPluginOptions;
    // (undocumented)
    getRootDir: () => string | null;
    // @internal (undocumented)
    _oldDevSsrServer: () => boolean | undefined;
    // Warning: (ae-forgotten-export) The symbol "SegmentCallback" needs to be exported by the entry point index.d.ts
    onSegment: (callback: SegmentCallback) => void;
    // (undocumented)
    registerBundleGraphAdder: (adder: BundleGraphAdder) => void;
}

// Warning: (ae-forgotten-export) The symbol "QwikVitePluginCSROptions" needs to be exported by the entry point index.d.ts
// Warning: (ae-forgotten-export) The symbol "QwikVitePluginSSROptions" needs to be exported by the entry point index.d.ts
//
// @public (undocumented)
export type QwikVitePluginOptions = QwikVitePluginCSROptions | QwikVitePluginSSROptions;

// @public (undocumented)
export interface ResolvedManifest {
    // (undocumented)
    bundleGraph?: QwikBundleGraph;
    // (undocumented)
    injections?: GlobalInjections[];
    // (undocumented)
    manifest: ServerQwikManifest;
    // (undocumented)
    mapper: SymbolMapper;
}

// @public
export type ServerQwikManifest = Pick<QwikManifest, 'manifestHash' | 'injections' | 'bundleGraph' | 'bundleGraphAsset' | 'mapping' | 'preloader' | 'core' | 'qwikLoader'>;

// @public (undocumented)
export type SymbolMapper = Record<string, readonly [symbol: string, chunk: string]>;

// @public (undocumented)
export type SymbolMapperFn = (symbolName: string, mapper: SymbolMapper | undefined, parent?: string) => readonly [symbol: string, chunk: string] | undefined;


export * from "@qwik.dev/optimizer";

// (No @packageDocumentation comment for this package)

```
