import { FC } from 'react'; import { ShareController, ShareResourceRef } from './types'; export interface ShareDialogProps { resource: ShareResourceRef; controller: ShareController; open: boolean; onOpenChange: (open: boolean) => void; /** Workspace scope used by the member picker + identity resolution. */ workspaceId?: string; authToken?: string; apiGatewayUrl?: string; } /** * Generic, controller-driven share dialog. Visibility-mode tabs are derived * from {@link ShareController.capabilities} and the resource's `vibeId`: * * - **Private** — sets visibility to PRIVATE. * - **Specific people** — member picker + permission + optional message/expiry * → `createUserShare`. * - **Everyone with Vibe** — only when `resource.vibeId` and * `capabilities.supportsVibeShare` → sets visibility to SHARED_WITH_VIBE. * - **Public link** — only when `capabilities.supportsLink` → role + expiry → * `createLinkShare` + copy URL. */ export declare const ShareDialog: FC; //# sourceMappingURL=ShareDialog.d.ts.map