import type { PipelineManifestAsset } from './client.js'; /** Minimal override shape for filter decisions (avoids circular import with import.ts). */ export interface ImportFilterOverride { sourceName: string; } export interface ImportFilterParams { sourceNames?: string[]; excludeSourceNames?: string[]; onlyWithOverrides?: boolean; overrides?: ImportFilterOverride[]; } export type ImportSkipReason = 'not_in_sourceNames' | 'in_excludeSourceNames' | 'onlyWithOverrides_no_override'; export type ImportFilterDecision = { include: true; } | { include: false; reason: ImportSkipReason; }; /** * Decide whether a catalog asset should be imported. * When `sourceNames` is non-empty, it is an allowlist (exact match on sourceName). * `excludeSourceNames` always skips listed names. * `onlyWithOverrides` requires an overrides row for that sourceName. */ export declare function decideImportAsset(sourceName: string, params: ImportFilterParams): ImportFilterDecision; export declare function partitionImportAssets(assets: PipelineManifestAsset[], params: ImportFilterParams): { selected: PipelineManifestAsset[]; skipped: Array<{ sourceName: string; skipped: true; reason: ImportSkipReason; ok: true; }>; unknownAllowlist: string[]; }; //# sourceMappingURL=import-filter.d.ts.map