Files
2026-07-13 13:39:12 +08:00

41 lines
825 B
TypeScript

export const PROVIDER_TIER = {
FREE: "free",
CHEAP: "cheap",
PREMIUM: "premium",
} as const;
export type ProviderTier = (typeof PROVIDER_TIER)[keyof typeof PROVIDER_TIER];
export interface TierAssignment {
provider: string;
model: string;
tier: ProviderTier;
reason: string;
costPer1MInput: number;
costPer1MOutput: number;
hasFreeTier: boolean;
freeQuotaLimit?: number;
}
export interface TierConfig {
version: string;
defaults: {
freeThreshold: number;
cheapThreshold: number;
};
providerOverrides: ProviderTierOverride[];
modelOverrides: ModelTierOverride[];
freeProviders: string[];
}
export interface ProviderTierOverride {
provider: string;
tier: ProviderTier;
}
export interface ModelTierOverride {
provider: string;
modelPattern: string;
tier: ProviderTier;
}