import { type CompanyProfileAgentAttempt, type CompanyProfileEntry } from "@opengeni/contracts"; import { createCompanyProfileAgentAdminRouter } from "@opengeni/core"; import type { Database } from "@opengeni/db"; import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import * as z from "zod/v4"; type JsonResult = (value: unknown) => { content: { type: "text"; text: string; }[]; }; export type RegisterCompanyProfileAgentAdminToolsInput = { server: McpServer; db: Database; attempt: CompanyProfileAgentAttempt; authorize: () => Promise; json: JsonResult; router?: Pick, "propose" | "confirm">; }; declare const entry: z.ZodObject<{ key: z.ZodOptional; content: z.ZodString; }, z.core.$strip>; type EntryInput = z.infer; /** * Derive a stable key from entry content: the first few words, normalized into * the company-profile key alphabet and bounded to the stable-key length. */ export declare function deriveCompanyProfileStableKey(content: string): string; /** * Resolve explicit or derived keys for one list and de-duplicate by suffixing * `-2`, `-3`, ... so the profile passes the unique-key contract. */ export declare function resolveCompanyProfileEntries(input: readonly EntryInput[]): CompanyProfileEntry[]; /** * Register the organization profile administration path. This is not derived * workspace learning: the initiating human must be the organization's active * owner (the same authority as the manual `account:admin` route). The separate * organization policy either blocks the proposal, keeps the exact bound * human-confirmation path, or permits immediate activation through the native * company-profile lifecycle. */ export declare function registerCompanyProfileAgentAdminTools(input: RegisterCompanyProfileAgentAdminToolsInput): void; export {};