interface SettingsUiTicket {
    pluginName: string;
    username: string;
    uiOrigin: string;
}
interface SettingsUiAssetSession {
    pluginName: string;
    username: string;
    uiOrigin: string;
}
export interface ValidatedSettingsUiAssetSession extends SettingsUiAssetSession {
    token: string;
}
export declare class PluginsSettingsUiTicketService {
    static readonly assetSessionTtl = 1800;
    private readonly tickets;
    private readonly assetSessions;
    issue(pluginName: string, username: string, requestOrigin?: string, requestHost?: string): string;
    consume(ticket: unknown, pluginName: string): SettingsUiTicket;
    issueAssetSession(pluginName: string, username: string, uiOrigin: string): string;
    validateAssetSession(token: string | undefined, pluginName: string): ValidatedSettingsUiAssetSession;
    revokeAssetSession(token: string | undefined, pluginName: string): void;
    revokeUserPlugin(username: string, pluginName: string): void;
    revokeUser(username: string): string[];
    extractAssetSession(cookieHeader: string | undefined): string | undefined;
    private digest;
    private resolveDevelopmentOrigin;
}
export {};
