import type { ActorAuthorityBinding, ActorRef, AuthorityResponse, Proposal, Vote } from "../types.js"; import type { AuthorityHandler } from "./types.js"; export type TribunalNotificationCallback = (proposalId: string, proposal: Proposal, members: readonly ActorRef[]) => void; export declare class TribunalHandler implements AuthorityHandler { private readonly pendingTribunals; private notificationCallback?; onPendingTribunal(callback: TribunalNotificationCallback): void; evaluate(proposal: Proposal, binding: ActorAuthorityBinding): Promise; submitVote(proposalId: string, voter: ActorRef, decision: "approve" | "reject" | "abstain", reasoning?: string): void; isPending(proposalId: string): boolean; getVotes(proposalId: string): Vote[]; getPendingIds(): string[]; clearAllPending(): void; private checkQuorum; } export declare function createTribunalHandler(): TribunalHandler;