import { PutioAPIClient } from '../../client';
import { FileSortOption, FileType, IFileDeleteResponse, ISearchResponse } from './types';
export default class Files {
    private client;
    constructor(client: PutioAPIClient);
    Query(id: number | string, { perPage, sortBy, contentType, fileType, streamUrl, streamUrlParent, mp4StreamUrl, mp4StreamUrlParent, hidden, mp4Status, mp4StatusParent, videoMetadata, videoMetadataParent, codecsParent, mediaInfoParent, breadcrumbs, total, }?: {
        perPage?: number;
        sortBy?: FileSortOption;
        contentType?: string;
        fileType?: FileType;
        streamUrl?: boolean;
        streamUrlParent?: boolean;
        mp4StreamUrl?: boolean;
        mp4StreamUrlParent?: boolean;
        hidden?: boolean;
        mp4Status?: boolean;
        mp4StatusParent?: boolean;
        videoMetadata?: boolean;
        videoMetadataParent?: boolean;
        codecsParent?: boolean;
        mediaInfoParent?: boolean;
        breadcrumbs?: boolean;
        total?: boolean;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Continue(cursor: string, { perPage }?: {
        perPage?: number;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Search(query: string, { perPage, fileType, }?: {
        perPage: number;
        fileType?: FileType | FileType[];
    }): Promise<import("../..").IPutioAPIClientResponse<ISearchResponse>>;
    ContinueSearch(cursor: string, { perPage }?: {
        perPage?: number;
    }): Promise<import("../..").IPutioAPIClientResponse<ISearchResponse>>;
    NewFolder(name: string, parentId?: number): Promise<import("../..").IPutioAPIClientResponse<any>>;
    CreateFolder({ name, parentId, path, }: {
        name: string;
        parentId?: number;
        path?: string;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    DeleteAll(cursor: string, excludeIds: number[] | undefined, { partialDelete, skipTrash, }: {
        partialDelete?: boolean;
        skipTrash?: boolean;
    }): Promise<import("../..").IPutioAPIClientResponse<IFileDeleteResponse>>;
    Delete(ids?: number[], { ignoreFileOwner, partialDelete, skipTrash, }?: {
        ignoreFileOwner?: boolean;
        partialDelete?: boolean;
        skipTrash?: boolean;
    }): Promise<import("../..").IPutioAPIClientResponse<IFileDeleteResponse>>;
    Extract({ ids, cursor, excludeIds, }: {
        ids?: number[];
        cursor?: string;
        excludeIds?: number[];
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    ExtractStatus(): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Share({ ids, cursor, excludeIds, friends, }: {
        ids?: number[];
        cursor?: string;
        excludeIds?: number[];
        friends: any;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Move(ids: number[], to: number): Promise<import("../..").IPutioAPIClientResponse<any>>;
    MoveAll({ cursor, excludeIds, to, }: {
        cursor?: string;
        excludeIds?: number[];
        to: number;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    ConvertToMp4({ ids, cursor, excludeIds, }: {
        ids?: number[];
        cursor?: string;
        excludeIds?: number[];
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    SharedOnes(): Promise<import("../..").IPutioAPIClientResponse<any>>;
    PublicShares(): Promise<import("../..").IPutioAPIClientResponse<any>>;
    SetWatchStatus({ ids, cursor, excludeIds, watched, }: {
        ids?: number[];
        cursor?: string;
        excludeIds?: number[];
        watched: boolean;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Upload({ file, fileName, parentId, }: {
        file: any;
        fileName?: string;
        parentId?: number;
    }): Promise<import("../..").IPutioAPIClientResponse<any>>;
}
