import { Type, InjectionToken, AbstractType } from '@angular/core';
import { SpectatorServiceOverrides, SpectatorServiceOptions, SpectatorService as BaseSpectatorService } from '@ngneat/spectator';
import { SpyObject } from './mock';
/**
 * @publicApi
 */
export interface SpectatorService<S> extends BaseSpectatorService<S> {
    inject<T>(token: Type<T> | InjectionToken<T> | AbstractType<T>): SpyObject<T>;
}
/**
 * @publicApi
 */
export type SpectatorServiceFactory<S> = (overrides?: SpectatorServiceOverrides<S>) => SpectatorService<S>;
/**
 * @publicApi
 */
export declare function createServiceFactory<S>(typeOrOptions: SpectatorServiceOptions<S> | Type<S>): SpectatorServiceFactory<S>;
