/**
 * DVP (Defense vs Position) Service
 *
 * Direct DB query to sportsdb DefenseVsPosition table for matchup context.
 * Supports all leagues: NBA, NCAAB, NHL, NFL, MLB, EPL, La Liga, Bundesliga,
 * Serie A, Ligue 1, Champions League, WNBA, UFC.
 */
export interface DvpRank {
    position: string;
    stat: string;
    rank: number;
    tier: string;
    value: number;
}
export interface TeamDvp {
    team: string;
    ranks: DvpRank[];
}
export interface DvpPositionData {
    stat: string;
    rank: number;
    tier: string;
    avgAllowed: number;
    leagueAvg: number;
    gamesCount: number;
}
export interface DvpTeamProfile {
    team: string;
    positions: Record<string, DvpPositionData[]>;
}
export interface DvpInsightResult {
    title: string;
    league: string;
    matchup: string;
    home: DvpTeamProfile | null;
    away: DvpTeamProfile | null;
    keyTakeaways: string[];
}
/**
 * Get DVP ranks for both teams in a matchup.
 * Each team's DVP represents how they DEFEND — low rank = bad defense = easy matchup for opponents.
 * Now supports ALL leagues with DVP data.
 */
export declare function getDvpForMatchup(homeTeam: string, awayTeam: string, league: string): Promise<{
    home: TeamDvp | null;
    away: TeamDvp | null;
}>;
/**
 * Format DVP data for API response (compact form for frontend).
 */
export declare function formatDvpForResponse(dvp: {
    home: TeamDvp | null;
    away: TeamDvp | null;
}): any;
/**
 * Check if a league has DVP data in the database.
 */
export declare function hasDvpData(league: string): Promise<boolean>;
/**
 * Generate a full DVP insight for a matchup — pure data, no LLM needed.
 * Queries DefenseVsPosition for both teams, formats into structured profiles,
 * and auto-generates key takeaways.
 */
export declare function generateDvpInsight(homeTeam: string, awayTeam: string, league: string, homeShort?: string, awayShort?: string): Promise<DvpInsightResult>;
//# sourceMappingURL=dvp.d.ts.map