import type { OrgInfo, OrgMember, OrgPendingInvitation, OrgRole } from "../../org/types.js"; export declare function useOrg(): import("@tanstack/react-query").UseQueryResult, Error>; export interface UseOrgRoleResult { org: OrgInfo | undefined; role: OrgRole | null; isOwner: boolean; canManageOrg: boolean; canInviteMembers: boolean; canManageDomain: boolean; isLoading: boolean; error: Error | null; } export declare function useOrgRole(): UseOrgRoleResult; export declare function useOrgMembers(): import("@tanstack/react-query").UseQueryResult, Error>; export declare function useOrgInvitations(): import("@tanstack/react-query").UseQueryResult, Error>; export declare function useCreateOrg(): import("@tanstack/react-query").UseMutationResult; export type InviteRole = "admin" | "member"; export interface InviteVars { email: string; role?: InviteRole; } export declare function useInviteMember(): import("@tanstack/react-query").UseMutationResult; export interface BulkInviteResult { succeeded: Array<{ id: string; email: string; role: InviteRole; status: "pending"; emailSent: boolean; emailError?: string; }>; failed: Array<{ email: string; error: string; }>; total: number; } export declare function useBulkInviteMembers(): import("@tanstack/react-query").UseMutationResult; export declare function useChangeMemberRole(): import("@tanstack/react-query").UseMutationResult<{ email: string; role: InviteRole; }, Error, { email: string; role: InviteRole; }, unknown>; export declare function useAcceptInvitation(): import("@tanstack/react-query").UseMutationResult; export declare function useRemoveMember(): import("@tanstack/react-query").UseMutationResult; export declare function useUpdateOrg(): import("@tanstack/react-query").UseMutationResult; export declare function useSwitchOrg(): import("@tanstack/react-query").UseMutationResult; export declare function useDeleteOrg(): import("@tanstack/react-query").UseMutationResult; export declare function useJoinByDomain(): import("@tanstack/react-query").UseMutationResult; export declare function useSetOrgDomain(): import("@tanstack/react-query").UseMutationResult; /** * Fetch the org's A2A secret on demand (owner/admin). Deliberately a separate * request from `useOrg()` so the secret only reaches the browser when the * operator asks to reveal or copy it. */ export declare function useRevealA2ASecret(): import("@tanstack/react-query").UseMutationResult<{ a2aSecret: string | null; }, Error, void, unknown>; export declare function useSetA2ASecret(): import("@tanstack/react-query").UseMutationResult<{ a2aSecret: string; previousSecret: string | null; }, Error, string | undefined, unknown>; export interface SyncA2ASecretResult { total: number; succeeded: number; failed: number; results: Array<{ id: string; name: string; url: string; ok: boolean; status?: number; error?: string; }>; } /** * Push the org's A2A secret to every connected app so cross-app delegation * works without manual copy/paste. Optionally pass a `signSecret` to sign * the outbound JWTs with a different secret (used by the regenerate-then- * sync flow where the new secret is in DB but peers still hold the old * one). */ export declare function useSyncA2ASecret(): import("@tanstack/react-query").UseMutationResult; //# sourceMappingURL=hooks.d.ts.map