/*!
 * name: nuget-server
 * version: 0.19.0
 * description: NuGet server on Node.js
 * author: Kouji Matsui (@kekyo@mi.kekyo.net)
 * license: MIT
 * repository.url: https://github.com/kekyo/nuget-server.git
 * git.commit.hash: 5b9501882b352a0490b3091210ed1740cfb81389
 */

/**
 * NuGet Service Index structure
 */
export interface NuGetServiceIndex {
    version: string;
    resources: Array<{
        "@id": string;
        "@type": string | string[];
        comment?: string;
    }>;
}
/**
 * Search result from NuGet API
 */
export interface SearchResult {
    totalHits: number;
    data: Array<{
        id: string;
        version: string;
        versions: Array<{
            version: string;
            "@id": string;
        }>;
    }>;
}
/**
 * Package versions response
 */
export interface PackageVersionsResponse {
    versions: string[];
}
/**
 * Configuration for NuGet client
 */
export interface NuGetClientConfig {
    baseUrl: string;
    username?: string;
    password?: string;
    timeout?: number;
}
/**
 * NuGet client service interface
 */
export interface NuGetClient {
    getServiceIndex: () => Promise<NuGetServiceIndex>;
    searchPackages: (searchUrl: string, skip: number, take: number) => Promise<SearchResult>;
    getPackageVersions: (packageBaseUrl: string, packageId: string) => Promise<string[]>;
    downloadPackage: (contentUrl: string, packageId: string, version: string) => Promise<Buffer>;
}
/**
 * Creates a NuGet client for interacting with remote NuGet servers
 * @param config - Client configuration
 * @returns NuGet client instance
 */
export declare const createNuGetClient: (config: NuGetClientConfig) => NuGetClient;
//# sourceMappingURL=nugetClient.d.ts.map