import type { AgentProfile } from '@tangle-network/agent-interface';
export type { AgentProfile } from '@tangle-network/agent-interface';
/**
 * Collision-resistant, path-safe, human-readable profile id for eval artifacts.
 * Scorecard joins still use `agentProfileHash`; this id is for run ids, matrix
 * keys, and directory names where two profiles must not collapse onto one row.
 * The suffix is the first 64 bits of the behaviour hash, enough for ordinary
 * eval matrices while keeping filenames readable.
 */
export declare function agentProfileId(profile: AgentProfile): string;
/**
 * Model snapshot used for `RunRecord.model`. Eval surfaces require a concrete
 * model id because run records reject bare/missing model aliases.
 */
export declare function agentProfileModelId(profile: AgentProfile): string;
/**
 * Deterministic behaviour identity for the canonical
 * `@tangle-network/agent-interface` AgentProfile.
 *
 * `name` and `description` are labels and do not affect the hash. Profile
 * `version`, prompt, model hints, tools, resources, hooks, modes, permissions,
 * and extensions do affect the hash. Resource array order is hash-bearing
 * because mount order can change agent behaviour. Undefined fields are treated
 * as absent; explicit `null` fields remain hash-bearing.
 */
export declare function agentProfileHash(profile: AgentProfile): string;
//# sourceMappingURL=agent-profile.d.ts.map