import { User } from "@openiap/openflow-api";
import { Span } from "@opentelemetry/api";
export declare class Auth {
    static ValidateByPassword(username: string, password: string, parent: Span): Promise<User>;
    static authorizationCache: HashTable<CachedUser>;
    private static cacheTimer;
    static getUser(key: string, type: string): User;
    private static cleanCache;
    static RemoveUser(key: string, type: string): Promise<void>;
    static AddUser(user: User, key: string, type: string): Promise<void>;
}
export declare class CachedUser {
    user: User;
    _id: string;
    type: string;
    firstsignin: Date;
    constructor(user: User, _id: string, type: string);
}
interface HashTable<T> {
    [key: string]: T;
}
export {};
