/** * Teams Client API * * Client-side API functions for team operations. * These functions are pure (no React) and can be used in hooks or directly. * * @module core/lib/teams/teams.api * * @example * // Direct usage * const teams = await TeamsAPI.getUserTeams() * * // In React Query * useQuery({ queryFn: TeamsAPI.getUserTeams }) */ import type { Team, AdminTeamsResponse, AdminTeamsParams, CreateTeamRequest } from './types'; /** * Teams Client API * * Provides methods for fetching teams from the API. * Server-side operations use TeamService directly. */ export declare class TeamsAPI { /** * Fetch current user's teams * * @returns Array of teams the user belongs to * @throws Error if request fails * * @example * const teams = await TeamsAPI.getUserTeams() */ static getUserTeams(): Promise; /** * Create a new team * * @param data - Team creation data * @returns Created team * @throws Error if request fails */ static createTeam(data: CreateTeamRequest): Promise; /** * Fetch all teams (admin only) * * Requires superadmin or developer role. * Supports search, filtering by type, and pagination. * * @param params - Query parameters * @returns Teams response with counts and pagination * @throws Error if request fails or user is not authorized * * @example * // Get all user teams * const response = await TeamsAPI.getAdminTeams({ type: 'user' }) * * // Search teams * const response = await TeamsAPI.getAdminTeams({ search: 'acme' }) * * // Paginate * const response = await TeamsAPI.getAdminTeams({ page: 2, limit: 20 }) */ static getAdminTeams(params?: AdminTeamsParams): Promise; } //# sourceMappingURL=teams.api.d.ts.map