export interface EndpointsRuntime {
    /** GET active announcement (used by `<AnnouncementBar>` polling). */
    announcementsUrl: string;
    accessCode: {
        /** POST validate access code. */
        validateUrl: string;
        /** POST consume / redeem access code after registration. */
        consumeUrl: string;
    };
    /** POST contact-form submission. */
    contactUrl: string;
}
export declare const EndpointsRuntimeContext: import("react").Context<EndpointsRuntime | null>;
/**
 * Optional read — returns null when no provider is mounted. Use for
 * surfaces that should silently skip the fetch (e.g. announcement
 * polling on a page rendered outside the provider tree).
 */
export declare function useEndpointsRuntime(): EndpointsRuntime | null;
/**
 * Strict variant — throws on missing provider. Use for consumers that
 * cannot function without an endpoint (form submission, code
 * validation). In tests/Storybook, wrap with the hub's
 * `<HubRuntimeProvider>` or a stub
 * `<EndpointsRuntimeContext.Provider value={mockedEndpoints}>`.
 */
export declare function useRequiredEndpointsRuntime(): EndpointsRuntime;
//# sourceMappingURL=endpoints-runtime-context.d.ts.map