import { AxiosResponse } from 'axios';
import { Config } from './config';
import Request from './request';
export interface Token {
    owner: string;
    name: string;
    createdTime: string;
    application: string;
    organization: string;
    user: string;
    code: string;
    accessToken: string;
    refreshToken: string;
    expiresIn: number;
    scope: string;
    tokenType: string;
    codeChallenge: string;
    codeIsUsed: boolean;
    codeExpireIn: number;
}
export declare class TokenSDK {
    private config;
    private readonly request;
    constructor(config: Config, request: Request);
    getTokens(p: number, pageSize: number): Promise<AxiosResponse<{
        data: Token[];
    }, any>>;
    getToken(id: string): Promise<AxiosResponse<{
        data: Token;
    }, any>>;
    modifyToken(method: string, token: Token): Promise<AxiosResponse<Record<string, unknown>, any>>;
    addToken(token: Token): Promise<AxiosResponse<Record<string, unknown>, any>>;
    updateToken(token: Token): Promise<AxiosResponse<Record<string, unknown>, any>>;
    deleteToken(token: Token): Promise<AxiosResponse<Record<string, unknown>, any>>;
    introspect(token: string, token_type_hint: string): Promise<AxiosResponse<Record<string, unknown>, any>>;
}
