import type { Auth } from '@owlmeans/auth'; import type { OidcClientAdapter } from '../types.js'; import type { ResponseMode } from './consts.js'; export interface GateModel { getClient: (user: Auth) => Promise; loadPermissions: (user: Auth, permissions: string[]) => Promise; fixPermissions: (permissions: string[], user: Auth) => string[]; prepareRequest: (client: OidcClientAdapter, request: PermissionRequest) => Promise; makeRequest: (permissions: string[], client: OidcClientAdapter) => Promise; } export interface PermissionRequest { grant_type: string; audience: string; client_id?: string; secret?: string; subject_token?: string; permission: string | string[]; response_mode: ResponseMode; } export interface PermissionResponse { rsid: string; rsname: string; scopes?: string[]; } //# sourceMappingURL=types.d.ts.map