import type { RequestOptions } from "../base-client"; import type { RequestBuilder } from "../request-builder"; /** Performance tier classification based on model pricing. */ export type ModelTier = "high_performance" | "standard" | "economy"; /** Model information returned by the catalog API. */ export interface ModelInfo { /** OpenRouter model ID (e.g., "anthropic/claude-sonnet-4"). */ id: string; /** Human-readable model name. */ name: string; /** Maximum context window size in tokens. */ context_length: number; /** Performance tier classification. */ tier: ModelTier; /** Model capabilities (e.g., "vision", "long_context"). */ capabilities: string[]; /** Model categories (e.g., "general", "reasoning", "coding"). */ categories: string[]; } /** Options for filtering the model catalog listing. */ export interface ListModelsOptions { /** Filter by performance tier. */ tier?: ModelTier; /** Filter by category (e.g., "reasoning", "coding"). */ category?: string; } /** * Models namespace factory (admin/ISV surface). * * Provides read-only access to the platform model catalog with tier * classification. Pricing data is intentionally excluded. * * @param rb - The request builder used for API communication. * @returns Models namespace with `list` and `get`. */ export declare function createModelsNamespace(rb: RequestBuilder): { /** * List available models with tier classification. * * @param options - Optional filters for tier and category. * @param reqOptions - Optional request options. * @returns Array of available models. * * @example * ```typescript * const admin = new GptAdmin({ apiKey: 'sk_srv_...' }); * * // All models * const models = await admin.models.list(); * * // Filter by tier * const standard = await admin.models.list({ tier: "standard" }); * ``` */ list(options?: ListModelsOptions, reqOptions?: RequestOptions): Promise; /** * Get a single model by ID. * * @param modelId - The model ID (e.g., "anthropic/claude-sonnet-4"). * Do NOT URL-encode — model IDs contain literal slashes. * @param reqOptions - Optional request options. * @returns Model details with tier classification. * * @example * ```typescript * const model = await admin.models.get("anthropic/claude-sonnet-4"); * console.log(model.tier); // "high_performance" * ``` */ get(modelId: string, reqOptions?: RequestOptions): Promise; }; //# sourceMappingURL=models.d.ts.map