import * as Common from '../../core/common/common.js'; import * as IssuesManager from '../../models/issues_manager/issues_manager.js'; import type * as Protocol from '../../generated/protocol.js'; type AggregationKeyTag = { aggregationKeyTag: undefined; }; /** * An opaque type for the key which we use to aggregate issues. The key must be * chosen such that if two aggregated issues have the same aggregation key, then * they also have the same issue code. */ export type AggregationKey = { toString(): string; } & AggregationKeyTag; /** * An `AggregatedIssue` representes a number of `IssuesManager.Issue.Issue` objects that are displayed together. * Currently only grouping by issue code, is supported. The class provides helpers to support displaying * of all resources that are affected by the aggregated issues. */ export declare class AggregatedIssue extends IssuesManager.Issue.Issue { #private; constructor(code: string, aggregationKey: AggregationKey); primaryKey(): string; aggregationKey(): AggregationKey; getBlockedByResponseDetails(): Iterable; cookies(): Iterable; getRawCookieLines(): Iterable<{ rawCookieLine: string; hasRequest: boolean; }>; sources(): Iterable; cookiesWithRequestIndicator(): Iterable<{ cookie: Protocol.Audits.AffectedCookie; hasRequest: boolean; }>; getHeavyAdIssues(): Iterable; getMixedContentIssues(): Iterable; getTrustedWebActivityIssues(): Iterable; getCorsIssues(): Set; getCspIssues(): Iterable; getDeprecationIssues(): Iterable; getLowContrastIssues(): Iterable; requests(): Iterable; getSharedArrayBufferIssues(): Iterable; getQuirksModeIssues(): Iterable; getAttributionReportingIssues(): ReadonlySet; getGenericIssues(): ReadonlySet; getDescription(): IssuesManager.MarkdownIssueDescription.MarkdownIssueDescription | null; getCategory(): IssuesManager.Issue.IssueCategory; getAggregatedIssuesCount(): number; addInstance(issue: IssuesManager.Issue.Issue): void; getKind(): IssuesManager.Issue.IssueKind; isHidden(): boolean; setHidden(_value: boolean): void; } export declare class IssueAggregator extends Common.ObjectWrapper.ObjectWrapper { #private; private readonly issuesManager; constructor(issuesManager: IssuesManager.IssuesManager.IssuesManager); aggregatedIssues(): Iterable; hiddenAggregatedIssues(): Iterable; aggregatedIssueCodes(): Set; aggregatedIssueCategories(): Set; aggregatedIssueKinds(): Set; numberOfAggregatedIssues(): number; numberOfHiddenAggregatedIssues(): number; keyForIssue(issue: IssuesManager.Issue.Issue): AggregationKey; } export declare const enum Events { AggregatedIssueUpdated = "AggregatedIssueUpdated", FullUpdateRequired = "FullUpdateRequired" } export type EventTypes = { [Events.AggregatedIssueUpdated]: AggregatedIssue; [Events.FullUpdateRequired]: void; }; export {};