import type { EcoComponent } from '../../types/public-types.js'; import type { AssetDefinition } from '../../services/assets/asset-processing-service/index.js'; import { type LazyGroup } from './lazy-entry-collection.js'; /** * Aggregated dependency output for one dependency-collection pass. */ export type CollectedComponentDependencies = { /** * Flat asset declarations ready for downstream processing. */ dependencies: AssetDefinition[]; /** * Lazy script groups keyed by component config and trigger key. */ lazyScriptsByConfig: Map, Map>; }; type CollectComponentDependenciesOptions = { components: Array | undefined | null>; integrationName: string; resolveLazyScripts: (componentDir: string, scripts: string[]) => string; createEcopagesJsxLazyEntryName: (integrationName: string, key: string) => string; isEcopagesJsxIntegration: (integrationName: string) => boolean; errors: { invalidStylesheetEntry: string; invalidScriptEntry: string; lazyScriptMissingSrc: string; }; }; /** * Walks component dependency trees and collects declared assets, module declarations, * and lazy-script group metadata in one pass. * * The returned structures intentionally preserve both the flat asset list used by * asset processing and the grouped lazy-trigger data used later during render output. */ export declare function collectComponentDependencies(options: CollectComponentDependenciesOptions): CollectedComponentDependencies; export {};