import { encodeGrantPrincipal } from "../../core/index.js"; /** The frozen §9.2 encoding lives in core, next to the parser that reads it — ONE encoder, so a surface can never write a shape `can()` cannot match. Re-exported because the pinned chrome surface names it here. */ export { encodeGrantPrincipal }; export interface ForkOfferProps { /** What the person was trying to change, in their words. */ instruction?: string; onFork(): void | PromiseLike; onDismiss?(): void; } /** * Build contract §9.4 — what a VIEWER sees instead of a bare refusal. The * `forbidden` code exists precisely so this can be offered: the caller * provably sees the app, so "you can't" is answerable with "…but here's what * you can do". */ export declare function ForkOffer({ instruction, onFork, onDismiss }: ForkOfferProps): import("react").JSX.Element;