import { type Operation } from "effection"; import { SerderKERI, Siger } from "../../../cesr/mod.js"; import type { AgentRuntime } from "./agent-runtime.js"; import { MULTISIG_RPY_ROUTE } from "./grouping.js"; import type { Hab, Habery } from "./habbing.js"; export { groupSigningMembers, isLocalGroupHab, localGroupMember, } from "./group-members.js"; /** Result of proposing one group endpoint-role authorization reply. */ export interface GroupEndpointRoleProposalResult { route: typeof MULTISIG_RPY_ROUTE; said: string | undefined; group: string; accepted: boolean; deliveries: string[]; attachmentBytes: number; rpy: Uint8Array; } /** Return whether endpoint-role state currently authorizes `eid` for `cid`. */ export declare function endpointRoleAccepted(hby: Habery, cid: string, role: string, eid: string): boolean; /** Load an accepted endpoint-role reply or throw a command-facing error. */ export declare function loadAcceptedEndpointRole(hab: Hab, eid: string, role?: string): Uint8Array; /** Propose one group endpoint-role reply under `/multisig/rpy`. */ export declare function proposeGroupEndpointRole(runtime: AgentRuntime, groupHab: Hab, args: { eid: string; role?: string; allow?: boolean; }): Operation; /** Endorse one reply with locally available group member signatures. */ export declare function groupEndorseReply(hby: Habery, groupPre: string, serder: SerderKERI): Uint8Array; /** * Resolve the public keys that should sign one group event or reply. * * Inception/rotation-style events carry their signing keys in the event body; * reply endorsements use the currently accepted group key state. */ export declare function groupEventKeys(hby: Habery, groupPre: string, serder: SerderKERI): string[]; /** * Sign a group event with every locally available member key in signing-index * order. */ export declare function signLocalGroupEvent(hby: Habery, serder: SerderKERI, smids: readonly string[], keys: readonly string[]): Siger[]; //# sourceMappingURL=endpoint-roleing.d.ts.map