import { IVssRestClientOptions } from "../Common/Context"; import { RestClientBase } from "../Common/RestClientBase"; import * as Management from "../Management/Management"; export declare class ManagementRestClient extends RestClientBase { constructor(options: IVssRestClientOptions); /** * Base URL for getting All Available Agent Pools + Currently Selected Agent Pool This is a read-only operation that does not require manage permissions. * */ getAdvancedSecurityAgentPoolSelection(): Promise; /** * Updates Agent Pool Registry Value For the Selected Agent Pool This automatically uses the underlying http client for agent pools to validate that the user has permissions to use that pool * * @param agentPoolName - */ updateAdvancedSecurityAgentPoolSelection(agentPoolName: string): Promise; /** * During multi-org billing computation in primary scale unit(EUS21), this API is used to create billing snapshot for a specific org. Primary scale unit will call this API for each org in different scsle units to create billing snapshot. Data will be stored in the org specific partition DB -\> billing snapshot table. This is needed as customers will fetch billing data from their org specific partition DB. * * @param meterUsage - * @param plan - */ createBillingSnapshot2(meterUsage: Management.MeterUsageForPlan, plan: Management.Plan): Promise; /** * Get all billable committers details, including those not matched with a VSID. * * @param plan - The plan to query. Plans supported: CodeSecurity and SecretProtection. This is a mandatory parameter. * @param billingDate - The date to query, or if not provided, today */ getBillableCommitterDetails2(plan: Management.Plan, billingDate?: Date): Promise; /** * @param plan - */ getLastMeterUsage2(plan: Management.Plan): Promise; /** * Get commiters used when calculating billing information. * * @param plan - The plan to query. Plans supported: CodeSecurity and SecretProtection. This is a mandatory parameter. * @param billingDate - The date to query, or if not provided, today */ getMeterUsage2(plan: Management.Plan, billingDate?: Date): Promise; /** * Get the current status of Advanced Security for the organization * * @param includeAllProperties - When true, also determine if pushes are blocked if they contain secrets */ getOrgEnablementStatus2(includeAllProperties?: boolean): Promise; /** * Update the status of Advanced Security for the organization * * @param orgEnablementSettings - The new status */ updateOrgEnablementStatus2(orgEnablementSettings: Management.OrgEnablementSettings): Promise; /** * Estimate the pushers that would be added to the customer's usage if Advanced Security was enabled for this organization. * * @param plan - The plan to query. */ getEstimatedBillablePushersDetailsForOrg2(plan?: Management.Plan): Promise; /** * Get the current status of Advanced Security for a project * * @param project - Project ID or project name * @param includeAllProperties - When true, also determine if pushes are blocked if they contain secrets */ getProjectEnablementStatus2(project: string, includeAllProperties?: boolean): Promise; /** * Update the status of Advanced Security for the project * * @param projectEnablementSettings - The new status * @param project - Project ID or project name */ updateProjectEnablementStatus2(projectEnablementSettings: Management.ProjectEnablementSettings, project: string): Promise; /** * Estimate the pushers that would be added to the customer's usage if Advanced Security was enabled for this project. * * @param project - Project ID or project name * @param plan - */ getEstimatedBillablePushersDetailsForProject2(project: string, plan?: Management.Plan): Promise; /** * Determines if Code Security, Secret Protection, and their features are enabled for the repository. * * @param project - Project ID or project name * @param repository - The name or ID of the repository * @param includeAllProperties - When true, will also determine if pushes are blocked when secrets are detected */ getRepoEnablementStatus2(project: string, repository: string, includeAllProperties?: boolean): Promise; /** * Update the enablement status of Code Security and Secret Protection, along with their respective features, for a given repository. * * @param repoEnablementSettings - new status * @param project - Project ID or project name * @param repository - Name or ID of the repository */ updateRepoAdvSecEnablementStatus2(repoEnablementSettings: Management.RepoEnablementSettings, project: string, repository: string): Promise; /** * Estimate the pushers that would be added to the customer's usage if Advanced Security was enabled for this repository. * * @param project - Project ID or project name * @param repository - The name or ID of the repository * @param plan - The plan to query. */ getEstimatedBillableCommittersDetailsForRepo2(project: string, repository: string, plan?: Management.Plan): Promise; }