import { PutioAPIClient } from '../../client';
import { MyOAuthApp, PopularOAuthApp } from './types';
export default class OAuth {
    private client;
    constructor(client: PutioAPIClient);
    GetAuthorizeURL(query?: object): string;
    Query(): Promise<import("../..").IPutioAPIClientResponse<{
        apps: MyOAuthApp[];
    }>>;
    Get(id: MyOAuthApp['id']): Promise<import("../..").IPutioAPIClientResponse<{
        app: MyOAuthApp;
        token: string;
    }>>;
    GetIconURL(id: MyOAuthApp['id']): string;
    SetIcon(id: MyOAuthApp['id'], data: object): Promise<import("../..").IPutioAPIClientResponse<any>>;
    Create(app: Omit<MyOAuthApp, 'id'>): Promise<import("../..").IPutioAPIClientResponse<{
        app: MyOAuthApp;
    }>>;
    Update(app: MyOAuthApp): Promise<import("../..").IPutioAPIClientResponse<{
        app: MyOAuthApp;
    }>>;
    Delete(id: MyOAuthApp['id']): Promise<import("../..").IPutioAPIClientResponse<any>>;
    RegenerateToken(id: MyOAuthApp['id']): Promise<import("../..").IPutioAPIClientResponse<{
        access_token: string;
    }>>;
    GetPopularApps(): Promise<import("../..").IPutioAPIClientResponse<{
        apps: PopularOAuthApp[];
    }>>;
}
