/**
* @license
* Copyright Google LLC All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
import { InjectionToken } from '@angular/core';
import * as i0 from "@angular/core";
/**
* Injection token to configure which origins should be excluded
* from the preconnect checks. It can either be a single string or an array of strings
* to represent a group of origins, for example:
*
* ```typescript
* {provide: PRECONNECT_CHECK_BLOCKLIST, useValue: 'https://your-domain.com'}
* ```
*
* or:
*
* ```typescript
* {provide: PRECONNECT_CHECK_BLOCKLIST,
* useValue: ['https://your-domain-1.com', 'https://your-domain-2.com']}
* ```
*
* @publicApi
*/
export declare const PRECONNECT_CHECK_BLOCKLIST: InjectionToken<(string | string[])[]>;
/**
* Contains the logic to detect whether an image, marked with the "priority" attribute
* has a corresponding `` tag in the `document.head`.
*
* Note: this is a dev-mode only class, which should not appear in prod bundles,
* thus there is no `ngDevMode` use in the code.
*/
export declare class PreconnectLinkChecker {
private document;
/**
* Set of tags found on this page.
* The `null` value indicates that there was no DOM query operation performed.
*/
private preconnectLinks;
private alreadySeen;
private window;
private blocklist;
constructor();
private populateBlocklist;
/**
* Checks that a preconnect resource hint exists in the head for the
* given src.
*
* @param rewrittenSrc src formatted with loader
* @param originalNgSrc ngSrc value
*/
assertPreconnect(rewrittenSrc: string, originalNgSrc: string): void;
private queryPreconnectLinks;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵprov: i0.ɵɵInjectableDeclaration;
}