import { type Rolldown } from 'vite'; import type { NativeComponentDefinition } from './native-component-interface.ts'; type NativeComponentAsset = { relativePath: string; byteLength: number; }; export declare const nativeComponentMetaKey = "vpt:native-components"; type NativeComponentSource = NativeComponentDefinition & { assets: readonly NativeComponentAsset[]; }; type NativeComponentMetadata = { sources: readonly NativeComponentSource[]; assetBytes: number; }; declare module 'rolldown' { interface CustomPluginOptions { [nativeComponentMetaKey]?: NativeComponentMetadata; } } /** Reads the native contribution to a transformed module's package weight. */ export declare function getNativeComponentAssetBytes(meta: Rolldown.CustomPluginOptions | undefined): number; /** Reads native sources attached to one transformed JSX interface module. */ export declare function getNativeComponentSources(meta: Rolldown.CustomPluginOptions | undefined): readonly NativeComponentSource[]; /** Collects a native component folder as opaque, recursively ordered assets without copying its interface module. */ export declare function collectNativeComponentAssets(definition: NativeComponentDefinition, interfacePath: string): Promise; export {};