import { type ModuleWithProviders, Type } from '@angular/core';
import type { OpraClientModuleAsyncOptions, OpraClientModuleOptions } from './interfaces/module-options.interface';
import * as i0 from "@angular/core";
export declare class OpraClientModule {
    static registerClient(options: OpraClientModuleOptions): ModuleWithProviders<OpraClientModule>;
    static registerService<T>(serviceClass: Type<T>, options: OpraClientModuleOptions): ModuleWithProviders<OpraClientModule>;
    static registerClientAsync(options: OpraClientModuleAsyncOptions): ModuleWithProviders<OpraClientModule>;
    static registerServiceAsync<T>(serviceClass: Type<T>, options: OpraClientModuleAsyncOptions): ModuleWithProviders<OpraClientModule>;
    private static _createAsyncProviders;
    private static _createAsyncOptionsProvider;
    static ɵfac: i0.ɵɵFactoryDeclaration<OpraClientModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<OpraClientModule, never, never, never>;
    static ɵinj: i0.ɵɵInjectorDeclaration<OpraClientModule>;
}
