import type { CanonicalAgentDocument } from '../../../agents/canonical/index.js';
import type { CursorModelPinMapping } from './catalog.js';
import { type CursorRoleOwner } from './shared.js';
export interface CursorMaterializedAgent {
    roleName: string;
    fileName: string;
    description: string;
    content: string;
    owner: CursorRoleOwner;
    mapping: CursorModelPinMapping;
}
export interface CursorMaterializeAgentOptions {
    agent: CanonicalAgentDocument;
    mapping: CursorModelPinMapping;
    owner: CursorRoleOwner;
}
export declare function materializeCursorAgent({ agent, mapping, owner, }: CursorMaterializeAgentOptions): CursorMaterializedAgent;
export declare function materializeCursorAgents(options: {
    agents: CanonicalAgentDocument[];
    targets: readonly CursorModelPinMapping[];
    owner: CursorRoleOwner;
}): CursorMaterializedAgent[];
export declare function assertNoUnmanagedCursorAgentCollisions(scopeRoot: string, desiredRoleNames: Iterable<string>): Promise<void>;
//# sourceMappingURL=materialize.d.ts.map