/** Shorter cap for names built from two config values, keeping the whole readable. */ export declare const COMPOSITE_VALUE_LENGTH = 14; /** * Normalize a config value for use inside a default name: collapse whitespace * (names are rendered on one line), strip control characters, and truncate. * Returns an empty string for values that carry no signal, so callers can fall * back to the bare type name. */ export declare function describeGraderValue(value: unknown, maxLength?: number): string; /** * Normalize a `string[]` config value (tool names, skill names) into a short * comma-joined description. Non-array or empty values yield an empty string so * callers fall back to the bare type name. */ export declare function describeGraderList(value: unknown, maxLength?: number): string; /** * Join a grader type with its config-derived discriminators, skipping parts * that carried no signal. Returns the bare type when nothing discriminates — * a grader whose config can't distinguish instances (e.g. `completed`) should * not be decorated with noise. */ export declare function graderNameFrom(type: string, ...parts: string[]): string; /** Warning name for a `defaultName` the resolver had to reject. */ export declare const DEFAULT_NAME_WARNING = "VallyGraderDefaultNameWarning"; /** * Resolve a grader type's config-derived default name, or `undefined` when the * type doesn't supply one (or supplies an unusable one). * * Returning `undefined` rather than falling back to the type name lets callers * preserve their own existing fallbacks — notably the name a grader sets on its * `GraderResult`, which must keep winning over the bare type for graders that * have not opted into `defaultName`. * * `defaultName` is arbitrary plugin code, so every rejection is non-fatal and * reported via `process.emitWarning` — silently degrading would leave a plugin * author with no signal that their naming function never ran. A value is * rejected when it throws, is not a string (including a Promise from an * accidentally `async` implementation), or normalizes to empty. */ export declare function resolveDefaultGraderName(defaultName: ((config: Record) => string) | undefined, config: Record): string | undefined; //# sourceMappingURL=default-name.d.ts.map