/** * Extend an app's live grant instead of replacing it. * * The gateway keeps one grant per owner and app, and a new approval * replaces that grant's scopes. A request for `whoop.recovery` from an app * that holds `oura.sleep` would leave it with `whoop.recovery` alone, so a * request has to carry what the grant already covers. * * The merge itself lives in `@opendatalabs/vana-sdk` (`mergeWithLiveGrant`, * `unionGrantScopes`). This module only adds the CLI's flag-worded * requested/removed conflict check, run before any network call. */ export { findLiveGrant, liveGrantScopes, mergeWithLiveGrant, unionGrantScopes, type GrantUnion, type GrantUnionGateway, type MergeWithLiveGrantInput, type MergeWithLiveGrantResult, } from "@opendatalabs/vana-sdk/server"; export declare class GrantUnionConflictError extends Error { readonly conflicting: string[]; constructor(conflicting: string[]); } /** * Refuse an entry that is both requested and removed, worded for the CLI * flags. The SDK makes the same check, but its message names its own * option names. */ export declare function assertNoGrantUnionConflict(scopes: readonly string[], removeScopes: readonly string[]): void; //# sourceMappingURL=grant-union.d.ts.map