import type { Group } from '../generated'; import type { GraphRequestOptions } from '../types'; export interface GraphGroups { getGroup: (id: string, options?: { expand?: Array<'members'>; select?: Array<'id' | 'description' | 'displayName' | 'members'>; }, requestOptions?: GraphRequestOptions) => Promise; createGroup: (data: Group, requestOptions?: GraphRequestOptions) => Promise; editGroup: (id: string, data: Group, requestOptions?: GraphRequestOptions) => Promise; deleteGroup: (id: string, ifMatch?: string, requestOptions?: GraphRequestOptions) => Promise; listGroups: (options?: { expand?: Array<'members'>; orderBy?: Array<'displayName' | 'displayName desc'>; search?: string; select?: Array<'id' | 'description' | 'displayName' | 'mail' | 'members'>; }, requestOptions?: GraphRequestOptions) => Promise; addMember: (groupId: string, userId: string, requestOptions?: GraphRequestOptions) => Promise; deleteMember: (groupId: string, userId: string, ifMatch?: string, requestOptions?: GraphRequestOptions) => Promise; }