/** * Resolve effective targets from layered sources. * * Priority (highest to lowest): plugin.json → marketplace.json → config.yaml. * Absence at all layers means no declaration — not "assumed compatible." */ import type { Target } from './types.js'; /** * Walk upward from `startingDir` looking for a `.claude-plugin/marketplace.json`. * * Handles both the canonical layout (marketplace is the parent of the plugin * dir) and deeper layouts where the marketplace lives further up the tree. * * Returns `undefined` if no marketplace.json is found within the walk bounds, * or if the found manifest is unreadable / invalid JSON / lacks * `defaults.targets`. Silent best-effort lookup — never throws, never logs. */ export declare function readMarketplaceDefaultTargets(startingDir: string): Promise; /** * Resolve effective targets. Plugin overrides marketplace overrides config. * Explicit empty array at any layer means "no runtimes" — not "fall back." */ export declare function resolveEffectiveTargets(params: { configTargets: Target[] | undefined; pluginTargets: Target[] | undefined; marketplaceTargets: Target[] | undefined; }): Target[] | undefined; //# sourceMappingURL=marketplace-defaults.d.ts.map