import type { CheckOptions } from 'taze'; /** * A taze configuration. * * Every property admits `undefined` explicitly, unlike `Partial`, which rejects it under * `exactOptionalPropertyTypes`. Passing `undefined` is how a consumer clears `maturityPeriod`, so the type * has to allow it. */ export type TazeConfig = { [K in keyof CheckOptions]?: CheckOptions[K] | undefined; }; /** * Builds a taze configuration from nmr's shared upgrade policy and a repo's own settings. * * Any property the caller supplies wins, including `0` and an explicit `undefined` — the latter restores * taze's inheritance of pnpm's `minimumReleaseAge`, which only applies while `maturityPeriod` is unset. * * The merge is shallow, which suits a policy of scalar defaults. A nested default would clobber rather * than merge, so adding one means revisiting this. */ export declare function defineConfig(config: TazeConfig): TazeConfig;