import { type EnvConfig } from '../../config/env.js'; export interface DigiKeyPart { digiKeyPartNumber: string; manufacturerPartNumber: string; manufacturer: string; description: string; quantityAvailable: number; unitPrice: number; datasheetUrl: string; photoUrl: string; rohsStatus: string; } export interface DigiKeyDigitalBomResult { parts: DigiKeyPart[]; total: number; } export declare class DigiKeyClient { private config; private logger; private baseUrl; private authUrl; private clientId; private clientSecret; private accessToken; private tokenExpiresAt; constructor(config: EnvConfig); private ensureToken; private apiGet; private apiPost; private parseDigiKeyPart; /** * Search DigiKey parts by keyword. * @param query - The search keyword * @returns Array of matching parts */ searchByKeyword(query: string): Promise; /** * Get detailed product information for a specific DigiKey part number. * @param digiKeyPartNumber - The DigiKey part number * @returns Part details */ getProductDetails(digiKeyPartNumber: string): Promise; /** * Get pricing and availability for multiple DigiKey parts (digital BOM). * @param partNumbers - Array of DigiKey part numbers * @returns BOM result with parts list and total count */ getDigitalBom(partNumbers: string[]): Promise; }