///
import { EventEmitter } from 'events';
import { UpdateImagePayload } from './image';
import { GalleryOptions, SubredditGalleryOptions, SearchGalleryOptions } from './gallery';
import { AccountData, AlbumData, Credentials, GalleryData, ImageData, ImgurApiResponse, Payload } from './common/types';
import { AxiosResponse, AxiosRequestConfig } from 'axios';
export type { Credentials as ImgurCredentials, ImgurApiResponse };
export declare class ImgurClient extends EventEmitter {
credentials: Credentials;
private plainFetcher;
private fetcher;
constructor(credentials: Credentials);
plainRequest(options: AxiosRequestConfig): Promise>;
request(options?: AxiosRequestConfig): Promise>;
deleteImage(imageHash: string): Promise>;
favoriteImage(imageHash: string): Promise>;
getAlbum(albumHash: string): Promise>;
getAccount(account: string): Promise>;
getAlbums(account: string, page?: number): Promise>;
getAlbumsIds(account: string, page?: number): Promise>;
getGallery(options: GalleryOptions): Promise>;
getSubredditGallery(options: SubredditGalleryOptions): Promise>;
searchGallery(options: SearchGalleryOptions): Promise>;
getImage(imageHash: string): Promise>;
updateImage(payload: UpdateImagePayload): Promise>;
upload(payload: Payload): Promise>;
}