constructor({config, externalRequest, storage}) {
        this.config = config;
        this.storage = storage;

        /** @type {IExternalRequest} */
        this.externalRequest = externalRequest;

        /** @type {ICustomProvider[]} */
        this.customProviders = [];
    }
@param {Object} dependencies
@param {IConfig} dependencies.config
@param {IStorage} dependencies.storage
@param {IExternalRequest} dependencies.externalRequest