import { Bridge } from '../core/bridge'; import { ApnaPermissions, Permission } from '../interfaces/permissions'; export interface PermissionsClientOptions { bridge: Bridge; call: (capability: string, args: unknown[]) => Promise; } /** Create the client-side permissions convenience module. */ export function createPermissionsClient( options: PermissionsClientOptions ): ApnaPermissions { return { request: (capabilities: string[]) => options.bridge.requestPermission(capabilities) as Promise, query: () => options.call('permissions.query', []) as Promise, revoke: (capability: string) => options.call('permissions.revoke', [capability]) as Promise, }; } export * from '../interfaces/permissions';