import { IVssRestClientOptions } from "../Common/Context"; import { RestClientBase } from "../Common/RestClientBase"; import * as Reporting from "../AdvancedSecurity.Reporting/Reporting"; import * as WebApi from "../WebApi/WebApi"; export declare class ReportingRestClient extends RestClientBase { constructor(options: IVssRestClientOptions); /** * Creates a new advanced filter for the organization. * * @param filter - The advanced filter to create. */ createAdvancedFilter(filter: Reporting.AdvancedFilterCreate): Promise; /** * Deletes an advanced filter. * * @param filterId - The ID of the advanced filter to delete. */ deleteAdvancedFilter(filterId: string): Promise; /** * Gets a specific advanced filter by its ID. * * @param filterId - The ID of the advanced filter to retrieve. */ getAdvancedFilter(filterId: string): Promise; /** * Gets all advanced filters for the organization. * * @param includeDeleted - Whether to include soft-deleted filters. * @param keywords - Optional filter to search filters by name (case-insensitive, partial match). */ listAdvancedFilters(includeDeleted?: boolean, keywords?: string): Promise; /** * Updates an advanced filter. Only the name can be updated. * * @param filter - The update data containing the new name. * @param filterId - The ID of the advanced filter to update. */ updateAdvancedFilter(filter: Reporting.AdvancedFilterUpdate, filterId: string): Promise; /** * Get all distinct dependency component names for the org (used for UX filtering) * */ getDependencyComponentNamesForOrg(): Promise; /** * Get all projects and repositories for the org (used for UX filtering) * */ getProjectsAndReposForOrg(): Promise; /** * Get all distinct code scanning rule names for the org (used for UX filtering) * * @param toolName - Optional tool name to filter rules by */ getRuleNamesForOrg(toolName?: string): Promise; /** * Get all distinct secret types for the org (used for UX filtering) * */ getSecretTypesForOrg(): Promise; /** */ getUXComputedFilters(): Promise; /** * Get Alert summary by severity for the org * * @param criteria - Options to limit the summaries returned */ getAlertSummaryForOrg(criteria?: Reporting.FilterCriteria): Promise; /** * Get Combined Alerts for the org * * @param criteria - Options to filter the combined alerts returned * @param top - The maximum number of alerts to return * @param continuationToken - If there are more alerts than can be returned, a continuation token is placed in the "x-ms-continuationtoken" header. Use that token here to get the next page of alerts */ getCombinedAlertsForOrg(criteria?: Reporting.CombinedAlertFilterCriteria, top?: number, continuationToken?: string): Promise>; /** * Get Enablement summary for the org * * @param criteria - Options to limit the summaries returned */ getEnablementSummaryForOrg(criteria?: Reporting.EnablementFilterCriteria): Promise; }