import { CreateProjectDTO, RowtGetProjectOptions, RowtLoginDTO, RowtProject, RowtUpdatePasswordDTO, RowtUser, TierStats, UpdateProjectDTO, UsageStats } from "./types";
declare class RowtConsole {
    private client;
    private isRefreshing;
    private refreshSubscribers;
    constructor(baseURL: string);
    private subscribeTokenRefresh;
    private onRefreshed;
    private refreshToken;
    private clearTokens;
    login(credentials: RowtLoginDTO): Promise<RowtUser>;
    logout(): Promise<string>;
    validateUser(RowtLoginDTO: RowtLoginDTO): Promise<boolean>;
    createUser(email: string, password: string): Promise<RowtUser>;
    getProfile(): Promise<RowtUser>;
    getCurrentUser(): Promise<RowtUser>;
    updatePassword(updatePasswordDTO: RowtUpdatePasswordDTO): Promise<RowtUser>;
    getLinksByProjectId(projectId: string, includeInteractions?: boolean): Promise<any>;
    getProjectById(projectId: string, options?: RowtGetProjectOptions): Promise<RowtProject>;
    private storeTokens;
    getUserProjects(): Promise<RowtProject[]>;
    updateProject(project: UpdateProjectDTO): Promise<RowtProject>;
    createProject(project: CreateProjectDTO): Promise<RowtProject>;
    regenerateApiKey(projectId: string): Promise<string>;
    getUserUsage(userId: string): Promise<UsageStats>;
    getUserTier(userId: string): Promise<TierStats>;
}
export default RowtConsole;
