interface IPackagistSearchResponse {
    results: [IPackagistSearchResponseItem];
    total: number;
    next?: Function;
}
interface IPackagistSearchResponseItem {
    name: string;
    description: string;
    url: string;
    repository: string;
    downloads: number;
    favers: number;
    abandoned?: string;
}
export declare function search({ name, tags, type, }: {
    name: string;
    tags: string | Array<string>;
    type: string;
}, pageSize?: number): Promise<IPackagistSearchResponse>;
export declare function searchByName(name: string, pageSize?: number): Promise<IPackagistSearchResponse>;
export declare function searchByTag(tags: string | Array<string>, pageSize?: number): Promise<IPackagistSearchResponse>;
export declare function searchByType(type: string, pageSize?: number): Promise<IPackagistSearchResponse>;
export {};
