/** * Provides util functions to quicker setup of tests for the async package. */ /// import { TestModuleMetadata } from '@angular/core/testing'; import { GoogleMapsConfig } from '@bespunky/angular-google-maps/async'; import { IGoogleMapsTestingModuleConfigOptions as IGoogleMapsSyncTestingModuleConfigOptions } from '@bespunky/angular-google-maps/testing'; /** * Creates a `TestModuleMetadeta` object that can be passed into `TestBed.configureTestingModule()` in order to * import the `GoogleMapsModule` **from the @bespunky/angular-google-maps/async package**, and allow DI without actually downloading the API from google. * This changes the default `GoogleMapsApiLoader` provider to the `NoOpGoogleMapsApiLoader`. * * @export * @param [config] (Optional) The module configuration to use when creating the module. Default is `defaultTestApiConfig` * @returns A TestBed-ready module configuration. */ export declare function createGoogleMapsTestModuleMetadata(config?: GoogleMapsConfig): TestModuleMetadata; /** * Provides the structure supported for options to pass into the `configureGoogleMapsTestingModule()` function. * * @export * @interface GoogleMapsTestingModuleConfigOptions * @template TComponent */ export interface IGoogleMapsTestingModuleConfigOptions extends IGoogleMapsSyncTestingModuleConfigOptions { /** (Optional) Custom configuration for the Google Maps API. Ignored when `async` if `false`. */ moduleConfig?: GoogleMapsConfig; } /** The default dummy config to use when loading the `GoogleMapsModule` for testing. */ export declare const defaultTestApiConfig: GoogleMapsConfig; /** * Configures a basic testing module with common definitions for Google Maps components and extracts useful tools and services. * This should allow faster setup without the redundancy of declarations and extractions of services. * After calling this function, the caller can simply deconstruct the tools and use them. * * @example let { api, component } = createGoogleMapsTestingModule({ componentType: GoogleMapsComponent }); * @export * @template TComponent The type of the component being tested (if there is a component). * @param {IGoogleMapsTestingModuleConfigOptions} [options] (Optional) The options for the configuring the test module. * @returns The created tools and services, ready to use. */ export declare function configureGoogleMapsTestingModule(options?: IGoogleMapsTestingModuleConfigOptions): Promise<{ fixture: import("@angular/core/testing").ComponentFixture; component: TComponent; debugElement: import("@angular/core").DebugElement; element: import("@angular/core").ElementRef; api: import("../../../../../../dist/bespunky/angular-google-maps/core/bespunky-angular-google-maps-core").GoogleMapsApiService; componentApi: import("../../../../../../dist/bespunky/angular-google-maps/core/bespunky-angular-google-maps-core").GoogleMapsComponentApiService; spies: { runInsideAngular: jasmine.Spy; runOutsideAngular: jasmine.Spy; runInsideAngularWhenReady: jasmine.Spy; runOutsideAngularWhenReady: jasmine.Spy; }; }>;