/// <reference types="node" />
import express from 'express';
import { Server } from 'http';
import { PluginModel } from '../../models/server/plugin';
import { RegisterServerAuthExternalOptions, RegisterServerAuthPassOptions, RegisterServerOptions, RegisterServerWebSocketRouteOptions } from '../../types/plugins';
import { RegisterServerHookOptions, RegisterServerSettingOptions, SettingsChangeCallback } from '../../../shared/models';
export declare class RegisterHelpers {
    private readonly npmName;
    private readonly plugin;
    private readonly server;
    private readonly onHookAdded;
    private readonly transcodingProfiles;
    private readonly transcodingEncoders;
    private readonly settings;
    private idAndPassAuths;
    private externalAuths;
    private readonly onSettingsChangeCallbacks;
    private readonly webSocketRoutes;
    private readonly router;
    private readonly videoConstantManagerFactory;
    constructor(npmName: string, plugin: PluginModel, server: Server, onHookAdded: (options: RegisterServerHookOptions) => void);
    buildRegisterHelpers(): RegisterServerOptions;
    reinitVideoConstants(npmName: string): void;
    reinitTranscodingProfilesAndEncoders(npmName: string): void;
    getSettings(): RegisterServerSettingOptions[];
    getRouter(): express.Router;
    getIdAndPassAuths(): RegisterServerAuthPassOptions[];
    getExternalAuths(): RegisterServerAuthExternalOptions[];
    getOnSettingsChangedCallbacks(): SettingsChangeCallback[];
    getWebSocketRoutes(): RegisterServerWebSocketRouteOptions[];
    private buildGetRouter;
    private buildRegisterWebSocketRoute;
    private buildRegisterSetting;
    private buildRegisterHook;
    private buildRegisterIdAndPassAuth;
    private buildRegisterExternalAuth;
    private buildUnregisterExternalAuth;
    private buildUnregisterIdAndPassAuth;
    private buildSettingsManager;
    private buildStorageManager;
    private buildTranscodingManager;
}
//# sourceMappingURL=register-helpers.d.ts.map