/**
 * Teams Query Keys Factory
 *
 * Centralized query key management for all team-related React Query hooks.
 * Enables predictable caching and smart cache invalidation.
 *
 * @module core/lib/teams/teams.keys
 *
 * @example
 * // Using keys in hooks
 * useQuery({ queryKey: teamsKeys.user() })
 * useQuery({ queryKey: teamsKeys.adminList({ search: 'acme' }) })
 *
 * // Invalidating related queries
 * queryClient.invalidateQueries({ queryKey: teamsKeys.all })
 */
import type { AdminTeamsParams } from './types';
export declare const teamsKeys: {
    /**
     * Base key for all team queries
     * Use to invalidate ALL team-related caches
     */
    readonly all: readonly ["teams"];
    /**
     * User's teams (normal user scope)
     * Endpoint: GET /api/v1/teams
     */
    readonly user: () => readonly ["teams", "user"];
    /**
     * Single team by ID
     */
    readonly detail: (teamId: string) => readonly ["teams", "detail", string];
    /**
     * Admin teams scope (superadmin/developer)
     * Base key for all admin team queries
     */
    readonly admin: () => readonly ["teams", "admin"];
    /**
     * Admin teams list with parameters
     * Endpoint: GET /api/superadmin/teams
     * Used by superadmin management page
     */
    readonly adminList: (params: AdminTeamsParams) => readonly ["teams", "admin", "list", AdminTeamsParams];
    /**
     * Admin teams search (optimized for dropdowns)
     * Uses simplified key for search-based caching
     */
    readonly adminSearch: (search: string) => readonly ["teams", "admin", "search", string];
};
/**
 * Type helper for query key inference
 */
export type TeamsKeys = typeof teamsKeys;
//# sourceMappingURL=teams.keys.d.ts.map