import { type CredentialChainOptions } from "@hasna/contracts/client"; import { type FeedBinding, type FeedFilter, type FeedPage } from "./protocol.js"; export * from "./protocol.js"; export interface FeedGrant extends FeedBinding { app: string; types: string[]; subject?: string; } /** Hosted only. Cursors are returned, never acknowledged or saved by the client. */ export declare function createFeedClient(options: { tenantId: string; env?: Record; credentials?: CredentialChainOptions; }): Readonly<{ baseUrl: string; grants(after?: string, signal?: AbortSignal): Promise<{ grants: FeedGrant[]; next: string | null; }>; capability(rawBinding: FeedBinding, rawFilter: FeedFilter, signal?: AbortSignal): Promise; read(rawBinding: FeedBinding, rawFilter: FeedFilter, options?: { cursor?: string; limit?: number; signal?: AbortSignal; }): Promise; }>;