import * as photos from './methods/photos';
import * as search from './methods/search';
import * as _internals from './internals';
export declare const createApi: (args: import("./helpers/request").InitParams) => {
    photos: {
        get: (a: {
            photoId: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/photos/types").Full>>;
        list: (a: import("./types/request").PaginationParams | undefined, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/photos/types").Basic[];
            total: number;
        }>>;
        getStats: (a: {
            photoId: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/photos/types").Stats>>;
        getRandom: (a: photos.RandomParams | undefined, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/photos/types").Random | import("./methods/photos/types").Random[]>>;
        trackDownload: (a: {
            downloadLocation: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            url: string;
        }>>;
    };
    users: {
        getPhotos: (a: {
            stats?: boolean | undefined;
        } & import("./types/request").OrientationParam & {
            username: string;
        } & import("./types/request").PaginationParams, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/photos/types").Basic[];
            total: number;
        }>>;
        getCollections: (a: {
            username: string;
        } & import("./types/request").PaginationParams, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/collections/types").Basic[];
            total: number;
        }>>;
        getLikes: (a: import("./types/request").OrientationParam & {
            username: string;
        } & import("./types/request").PaginationParams, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/photos/types").Basic[];
            total: number;
        }>>;
        get: (a: {
            username: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/users/types").Full>>;
    };
    search: {
        getCollections: (a: search.SearchParams, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/search/types/response").Collections>>;
        getPhotos: (a: {
            query: string;
        } & Pick<import("./types/request").PaginationParams, "page" | "perPage"> & import("./types/request").OrientationParam & {
            orderBy?: import("./methods/search/types/request").SearchOrderBy | undefined;
            color?: import("./methods/search/types/request").ColorId | undefined;
            lang?: import("./methods/search/types/request").Language | undefined;
            contentFilter?: import("./methods/search/types/request").ContentFilter | undefined;
            collectionIds?: string[] | undefined;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/search/types/response").Photos>>;
        getUsers: (a: search.SearchParams, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/search/types/response").Users>>;
    };
    collections: {
        getPhotos: (a: {
            collectionId: string;
        } & import("./types/request").PaginationParams & import("./types/request").OrientationParam, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: any[];
            total: number;
        }>>;
        get: (a: {
            collectionId: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<any>>;
        list: (a: Pick<import("./types/request").PaginationParams, "page" | "perPage"> | undefined, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: any[];
            total: number;
        }>>;
        getRelated: (a: {
            collectionId: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<any>>;
    };
    topics: {
        list: (a: import("./helpers/typescript").OmitStrict<import("./types/request").PaginationParams, "orderBy"> & {
            orderBy?: ("featured" | "latest" | "oldest" | "position") | undefined;
            topicIdsOrSlugs?: string[] | undefined;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/topics/types").Basic[];
            total: number;
        }>>;
        get: (a: {
            topicIdOrSlug: string;
        }, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<import("./methods/topics/types").Full>>;
        getPhotos: (a: {
            topicIdOrSlug: string;
        } & import("./types/request").PaginationParams & import("./types/request").OrientationParam, additionalFetchOptions?: import("./helpers/request").AdditionalFetchOptions | undefined) => Promise<import("./helpers/response").ApiResponse<{
            results: import("./methods/photos/types").Basic[];
            total: number;
        }>>;
    };
};
export { Language, ColorId, ContentFilter, SearchOrderBy } from './methods/search/types/request';
export { OrderBy, Orientation } from './types/request';
export { _internals };
