/**
 * Azure Quota API
 *
 * Generated from the Azure REST API specs.
 * DO NOT EDIT - regenerate with: bun run generate
 */
import * as Schema from "effect/Schema";
export declare const GroupQuotaLimitsListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLimitsListInput = typeof GroupQuotaLimitsListInput.Type;
export declare const GroupQuotaLimitsListOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLimitsListOutput = typeof GroupQuotaLimitsListOutput.Type;
/**
 * Gets the GroupQuotaLimits for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaLimitsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLimitsRequestGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly requestId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLimitsRequestGetInput = typeof GroupQuotaLimitsRequestGetInput.Type;
export declare const GroupQuotaLimitsRequestGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLimitsRequestGetOutput = typeof GroupQuotaLimitsRequestGetOutput.Type;
/**
 * Get API to check the status of a GroupQuota request by requestId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param requestId - Request Id.
 */
export declare const GroupQuotaLimitsRequestGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly requestId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLimitsRequestListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.String;
}>;
export type GroupQuotaLimitsRequestListInput = typeof GroupQuotaLimitsRequestListInput.Type;
export declare const GroupQuotaLimitsRequestListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotaLimitsRequestListOutput = typeof GroupQuotaLimitsRequestListOutput.Type;
/**
 * Get API to check the status of a GroupQuota request by requestId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param $filter - | Field | Supported operators  \\r\\n|---------------------|------------------------\\n\\r\\n location eq {location} and resource eq {resourceName}\\n Example: $filter=location eq eastus and resourceName eq cores
 */
export declare const GroupQuotaLimitsRequestList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter: string;
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLimitsRequestUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLimitsRequestUpdateInput = typeof GroupQuotaLimitsRequestUpdateInput.Type;
export declare const GroupQuotaLimitsRequestUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLimitsRequestUpdateOutput = typeof GroupQuotaLimitsRequestUpdateOutput.Type;
/**
 * Create the GroupQuota requests for a specific ResourceProvider/Location/Resource. The resourceName properties are specified in the request body. Only 1 resource quota can be requested. Please note that patch request creates a new groupQuota request.
 * Use the polling API - OperationsStatus URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate status. This API provides the finals status with the request details and status.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaLimitsRequestUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLocationSettingsCreateOrUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLocationSettingsCreateOrUpdateInput = typeof GroupQuotaLocationSettingsCreateOrUpdateInput.Type;
export declare const GroupQuotaLocationSettingsCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLocationSettingsCreateOrUpdateOutput = typeof GroupQuotaLocationSettingsCreateOrUpdateOutput.Type;
/**
 * Enables the GroupQuotas enforcement for the resource provider and the location specified. The resource provider will start using the group quotas as the overall quota for the subscriptions included in the GroupQuota. The subscriptions cannot request quota at subscription level since it is now part of an enforced group.
 * The subscriptions share the GroupQuotaLimits assigned to the GroupQuota. If the GroupQuotaLimits is used, then submit a groupQuotaLimit request for the specific resource - provider/location/resource.
 * Once the GroupQuota Enforcement is enabled then, it cannot be deleted or reverted back. To disable GroupQuota Enforcement -
 * 1. Remove all the subscriptions from the groupQuota using the delete API for Subscriptions (Check the example - GroupQuotaSubscriptions_Delete).
 * 2. Then delete the GroupQuota (Check the example - GroupQuotas_Delete).
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaLocationSettingsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLocationSettingsGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLocationSettingsGetInput = typeof GroupQuotaLocationSettingsGetInput.Type;
export declare const GroupQuotaLocationSettingsGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLocationSettingsGetOutput = typeof GroupQuotaLocationSettingsGetOutput.Type;
/**
 * Gets the GroupQuotas enforcement settings for the ResourceProvider/location. The locations, where GroupQuota enforcement is not enabled will return Not Found.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaLocationSettingsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaLocationSettingsUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaLocationSettingsUpdateInput = typeof GroupQuotaLocationSettingsUpdateInput.Type;
export declare const GroupQuotaLocationSettingsUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaLocationSettingsUpdateOutput = typeof GroupQuotaLocationSettingsUpdateOutput.Type;
/**
 * Enables the GroupQuotas enforcement for the resource provider and the location specified. The resource provider will start using the group quotas as the overall quota for the subscriptions included in the GroupQuota.  The subscriptions cannot request quota at subscription level since it is now part of an enforced group.
 * The subscriptions share the GroupQuotaLimits assigned to the GroupQuota. If the GroupQuotaLimits is used, then submit a groupQuotaLimit request for the specific resource - provider/location/resource.
 * Once the GroupQuota Enforcement is enabled then, it cannot be deleted or reverted back. To disable GroupQuota Enforcement -
 * 1. Remove all the subscriptions from the groupQuota using the delete API for Subscriptions (Check the example - GroupQuotaSubscriptions_Delete).
 * 2. Ten delete the GroupQuota (Check the example - GroupQuotas_Delete).
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaLocationSettingsUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotasCreateOrUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotasCreateOrUpdateInput = typeof GroupQuotasCreateOrUpdateInput.Type;
export declare const GroupQuotasCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotasCreateOrUpdateOutput = typeof GroupQuotasCreateOrUpdateOutput.Type;
/**
 * Creates a new GroupQuota for the name passed. A RequestId will be returned by the Service. The status can be polled periodically. The status Async polling is using standards defined at - https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations. Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to Get URI and full details can be checked.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotasCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotasDeleteInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotasDeleteInput = typeof GroupQuotasDeleteInput.Type;
export declare const GroupQuotasDeleteOutput: Schema.Void;
export type GroupQuotasDeleteOutput = typeof GroupQuotasDeleteOutput.Type;
/**
 * Deletes the GroupQuotas for the name passed. All the remaining shareQuota in the GroupQuotas will be lost.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotasDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotasGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotasGetInput = typeof GroupQuotasGetInput.Type;
export declare const GroupQuotasGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotasGetOutput = typeof GroupQuotasGetOutput.Type;
/**
 * Gets the GroupQuotas for the name passed. It will return the GroupQuotas properties only. The details on group quota can be access from the group quota APIs.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotasGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotasListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotasListInput = typeof GroupQuotasListInput.Type;
export declare const GroupQuotasListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotasListOutput = typeof GroupQuotasListOutput.Type;
/**
 * Lists GroupQuotas for the scope passed. It will return the GroupQuotas QuotaEntity properties only.The details on group quota can be access from the group quota APIs.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 */
export declare const GroupQuotasList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly managementGroupId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionAllocationListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionAllocationListInput = typeof GroupQuotaSubscriptionAllocationListInput.Type;
export declare const GroupQuotaSubscriptionAllocationListOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionAllocationListOutput = typeof GroupQuotaSubscriptionAllocationListOutput.Type;
/**
 * Gets all the quota allocated to a subscription for the specified resource provider and location for resource names passed in $filter=resourceName eq {SKU}. This will include the GroupQuota and total quota allocated to the subscription. Only the Group quota allocated to the subscription can be allocated back to the MG Group Quota.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaSubscriptionAllocationList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionAllocationRequestGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly allocationId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionAllocationRequestGetInput = typeof GroupQuotaSubscriptionAllocationRequestGetInput.Type;
export declare const GroupQuotaSubscriptionAllocationRequestGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionAllocationRequestGetOutput = typeof GroupQuotaSubscriptionAllocationRequestGetOutput.Type;
/**
 * Get the quota allocation request status for the subscriptionId by allocationId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param allocationId - Request Id.
 */
export declare const GroupQuotaSubscriptionAllocationRequestGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly allocationId: string;
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionAllocationRequestListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.String;
}>;
export type GroupQuotaSubscriptionAllocationRequestListInput = typeof GroupQuotaSubscriptionAllocationRequestListInput.Type;
export declare const GroupQuotaSubscriptionAllocationRequestListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotaSubscriptionAllocationRequestListOutput = typeof GroupQuotaSubscriptionAllocationRequestListOutput.Type;
/**
 * Get all the quotaAllocationRequests for a resourceProvider/location. The filter paramter for location is required.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param $filter - | Field | Supported operators
|---------------------|------------------------

location eq {location}
Example: $filter=location eq eastus
 */
export declare const GroupQuotaSubscriptionAllocationRequestList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter: string;
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
    readonly subscriptionId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionAllocationRequestUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionAllocationRequestUpdateInput = typeof GroupQuotaSubscriptionAllocationRequestUpdateInput.Type;
export declare const GroupQuotaSubscriptionAllocationRequestUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionAllocationRequestUpdateOutput = typeof GroupQuotaSubscriptionAllocationRequestUpdateOutput.Type;
/**
 * Request to assign quota from group quota to a specific Subscription. The assign GroupQuota to subscriptions or reduce the quota allocated to subscription to give back the unused quota ( quota >= usages) to the groupQuota. So, this API can be used to assign Quota to subscriptions and assign back unused quota to group quota, which can be assigned to another subscriptions in the GroupQuota. User can collect unused quotas from multiple subscriptions within the groupQuota and assign the groupQuota to the subscription, where it's needed.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaSubscriptionAllocationRequestUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionRequestsGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly requestId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionRequestsGetInput = typeof GroupQuotaSubscriptionRequestsGetInput.Type;
export declare const GroupQuotaSubscriptionRequestsGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionRequestsGetOutput = typeof GroupQuotaSubscriptionRequestsGetOutput.Type;
/**
 * Get API to check the status of a subscriptionIds request by requestId.  Use the polling API - OperationsStatus URI specified in Azure-AsyncOperation header field, with retry-after duration in seconds to check the intermediate status. This API provides the finals status with the request details and status.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param requestId - Request Id.
 */
export declare const GroupQuotaSubscriptionRequestsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly requestId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionRequestsListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionRequestsListInput = typeof GroupQuotaSubscriptionRequestsListInput.Type;
export declare const GroupQuotaSubscriptionRequestsListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotaSubscriptionRequestsListOutput = typeof GroupQuotaSubscriptionRequestsListOutput.Type;
/**
 * List API to check the status of a subscriptionId requests by requestId. Request history is maintained for 1 year.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotaSubscriptionRequestsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionsCreateOrUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionsCreateOrUpdateInput = typeof GroupQuotaSubscriptionsCreateOrUpdateInput.Type;
export declare const GroupQuotaSubscriptionsCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionsCreateOrUpdateOutput = typeof GroupQuotaSubscriptionsCreateOrUpdateOutput.Type;
/**
 * Adds a subscription to GroupQuotas. The subscriptions will be validated based on the additionalAttributes defined in the GroupQuota. The additionalAttributes works as filter for the subscriptions, which can be included in the GroupQuotas. The request's TenantId is validated against the subscription's TenantId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - Management Group Id.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const GroupQuotaSubscriptionsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionsDeleteInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionsDeleteInput = typeof GroupQuotaSubscriptionsDeleteInput.Type;
export declare const GroupQuotaSubscriptionsDeleteOutput: Schema.Void;
export type GroupQuotaSubscriptionsDeleteOutput = typeof GroupQuotaSubscriptionsDeleteOutput.Type;
/**
 * Removes the subscription from GroupQuotas. The request's TenantId is validated against the subscription's TenantId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const GroupQuotaSubscriptionsDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionsGetInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionsGetInput = typeof GroupQuotaSubscriptionsGetInput.Type;
export declare const GroupQuotaSubscriptionsGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionsGetOutput = typeof GroupQuotaSubscriptionsGetOutput.Type;
/**
 * Returns the subscriptionIds along with its provisioning state for being associated with the GroupQuota. If the subscription is not a member of GroupQuota, it will return 404, else 200.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const GroupQuotaSubscriptionsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionsListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionsListInput = typeof GroupQuotaSubscriptionsListInput.Type;
export declare const GroupQuotaSubscriptionsListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotaSubscriptionsListOutput = typeof GroupQuotaSubscriptionsListOutput.Type;
/**
 * Returns a list of the subscriptionIds associated with the GroupQuotas.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotaSubscriptionsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaSubscriptionsUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaSubscriptionsUpdateInput = typeof GroupQuotaSubscriptionsUpdateInput.Type;
export declare const GroupQuotaSubscriptionsUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotaSubscriptionsUpdateOutput = typeof GroupQuotaSubscriptionsUpdateOutput.Type;
/**
 * Updates the GroupQuotas with the subscription to add to the subscriptions list. The subscriptions will be validated if additionalAttributes are defined in the GroupQuota. The request's TenantId is validated against the subscription's TenantId.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - Management Group Id.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const GroupQuotaSubscriptionsUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
    readonly subscriptionId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotasUpdateInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotasUpdateInput = typeof GroupQuotasUpdateInput.Type;
export declare const GroupQuotasUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type GroupQuotasUpdateOutput = typeof GroupQuotasUpdateOutput.Type;
/**
 * Updates the GroupQuotas for the name passed. A GroupQuotas RequestId will be returned by the Service. The status can be polled periodically. The status Async polling is using standards defined at - https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#asynchronous-operations. Use the OperationsStatus URI provided in Azure-AsyncOperation header, the duration will be specified in retry-after header. Once the operation gets to terminal state - Succeeded | Failed, then the URI will change to Get URI and full details can be checked.
 * Any change in the filters will be applicable to the future quota assignments, existing quota allocated to subscriptions from the GroupQuotas remains unchanged.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 */
export declare const GroupQuotasUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly managementGroupId: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const GroupQuotaUsagesListInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly groupQuotaName: Schema.String;
    readonly resourceProviderName: Schema.String;
    readonly location: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type GroupQuotaUsagesListInput = typeof GroupQuotaUsagesListInput.Type;
export declare const GroupQuotaUsagesListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type GroupQuotaUsagesListOutput = typeof GroupQuotaUsagesListOutput.Type;
/**
 * Gets the GroupQuotas usages and limits(quota). Location is required paramter.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - The management group ID.
 * @param groupQuotaName - The GroupQuota name. The name should be unique for the provided context tenantId/MgId.
 * @param resourceProviderName - The resource provider name, such as - Microsoft.Compute. Currently only Microsoft.Compute resource provider supports this API.
 * @param location - The name of the Azure region.
 */
export declare const GroupQuotaUsagesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly groupQuotaName: string;
    readonly location: string;
    readonly managementGroupId: string;
    readonly resourceProviderName: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaCreateOrUpdateInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly resourceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type QuotaCreateOrUpdateInput = typeof QuotaCreateOrUpdateInput.Type;
export declare const QuotaCreateOrUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type QuotaCreateOrUpdateOutput = typeof QuotaCreateOrUpdateOutput.Type;
/**
 * Create or update the quota limit for the specified resource with the requested value. To update the quota, follow these steps:
 * 1. Use the GET operation for quotas and usages to determine how much quota remains for the specific resource and to calculate the new quota limit. These steps are detailed in [this example](https://techcommunity.microsoft.com/t5/azure-governance-and-management/using-the-new-quota-rest-api/ba-p/2183670).
 * 2. Use this PUT operation to update the quota limit. Please check the URI in location header for the detailed status of the request.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param resourceName - Resource name for a given resource provider. For example:
- SKU name for Microsoft.Compute
- SKU or TotalLowPriorityCores for Microsoft.MachineLearningServices
 For Microsoft.Network PublicIPAddresses.
 */
export declare const QuotaCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceName: string;
    readonly scope: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaGetInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly resourceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type QuotaGetInput = typeof QuotaGetInput.Type;
export declare const QuotaGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type QuotaGetOutput = typeof QuotaGetOutput.Type;
/**
 * Get the quota limit of a resource. The response can be used to determine the remaining quota to calculate a new quota limit that can be submitted with a PUT request.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param resourceName - Resource name for a given resource provider. For example:
- SKU name for Microsoft.Compute
- SKU or TotalLowPriorityCores for Microsoft.MachineLearningServices
 For Microsoft.Network PublicIPAddresses.
 */
export declare const QuotaGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceName: string;
    readonly scope: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type QuotaListInput = typeof QuotaListInput.Type;
export declare const QuotaListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type QuotaListOutput = typeof QuotaListOutput.Type;
/**
 * Get a list of current quota limits of all resources for the specified scope. The response from this GET operation can be leveraged to submit requests to update a quota.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 */
export declare const QuotaList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly scope: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaOperationListInput: Schema.Struct<{
    readonly "api-version": Schema.String;
}>;
export type QuotaOperationListInput = typeof QuotaOperationListInput.Type;
export declare const QuotaOperationListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly name: Schema.optional<Schema.String>;
        readonly display: Schema.optional<Schema.Struct<{
            readonly provider: Schema.optional<Schema.String>;
            readonly resource: Schema.optional<Schema.String>;
            readonly operation: Schema.optional<Schema.String>;
            readonly description: Schema.optional<Schema.String>;
        }>>;
        readonly origin: Schema.optional<Schema.String>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type QuotaOperationListOutput = typeof QuotaOperationListOutput.Type;
/**
 * List the operations for the provider
 *
 * @param api-version - The API version to use for this operation.
 */
export declare const QuotaOperationList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly display?: {
            readonly description?: string | undefined;
            readonly operation?: string | undefined;
            readonly provider?: string | undefined;
            readonly resource?: string | undefined;
        } | undefined;
        readonly name?: string | undefined;
        readonly origin?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaRequestStatusGetInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly id: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type QuotaRequestStatusGetInput = typeof QuotaRequestStatusGetInput.Type;
export declare const QuotaRequestStatusGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type QuotaRequestStatusGetOutput = typeof QuotaRequestStatusGetOutput.Type;
/**
 * Get the quota request details and status by quota request ID for the resources of the resource provider at a specific location. The quota request ID **id** is returned in the response of the PUT operation.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param id - Quota request ID.
 */
export declare const QuotaRequestStatusGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly id: string;
    readonly scope: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaRequestStatusListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
    readonly $top: Schema.optional<Schema.Number>;
    readonly $skiptoken: Schema.optional<Schema.String>;
}>;
export type QuotaRequestStatusListInput = typeof QuotaRequestStatusListInput.Type;
export declare const QuotaRequestStatusListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type QuotaRequestStatusListOutput = typeof QuotaRequestStatusListOutput.Type;
/**
 * For the specified scope, get the current quota requests for a one year period ending at the time is made. Use the **oData** filter to select quota requests.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param $filter - | Field                    | Supported operators
|---------------------|------------------------

|requestSubmitTime | ge, le, eq, gt, lt
|provisioningState eq {QuotaRequestState}
|resourceName eq {resourceName}
 * @param $top - Number of records to return.
 * @param $skiptoken - The **Skiptoken** parameter is used only if a previous operation returned a partial result. If a previous response contains a **nextLink** element, its value includes a **skiptoken** parameter that specifies a starting point to use for subsequent calls.
 */
export declare const QuotaRequestStatusList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly $skiptoken?: string | undefined;
    readonly $top?: number | undefined;
    readonly "api-version": string;
    readonly scope: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
export declare const QuotaUpdateInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly resourceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type QuotaUpdateInput = typeof QuotaUpdateInput.Type;
export declare const QuotaUpdateOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type QuotaUpdateOutput = typeof QuotaUpdateOutput.Type;
/**
 * Update the quota limit for a specific resource to the specified value:
 * 1. Use the Usages-GET and Quota-GET operations to determine the remaining quota for the specific resource and to calculate the new quota limit. These steps are detailed in [this example](https://techcommunity.microsoft.com/t5/azure-governance-and-management/using-the-new-quota-rest-api/ba-p/2183670).
 * 2. Use this PUT operation to update the quota limit. Please check the URI in location header for the detailed status of the request.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param resourceName - Resource name for a given resource provider. For example:
- SKU name for Microsoft.Compute
- SKU or TotalLowPriorityCores for Microsoft.MachineLearningServices
 For Microsoft.Network PublicIPAddresses.
 */
export declare const QuotaUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceName: string;
    readonly scope: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const UsagesGetInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly resourceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type UsagesGetInput = typeof UsagesGetInput.Type;
export declare const UsagesGetOutput: Schema.Struct<{
    readonly id: Schema.optional<Schema.String>;
    readonly name: Schema.optional<Schema.String>;
    readonly type: Schema.optional<Schema.String>;
    readonly systemData: Schema.optional<Schema.Struct<{
        readonly createdBy: Schema.optional<Schema.String>;
        readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly createdAt: Schema.optional<Schema.String>;
        readonly lastModifiedBy: Schema.optional<Schema.String>;
        readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
        readonly lastModifiedAt: Schema.optional<Schema.String>;
    }>>;
}>;
export type UsagesGetOutput = typeof UsagesGetOutput.Type;
/**
 * Get the current usage of a resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param resourceName - Resource name for a given resource provider. For example:
- SKU name for Microsoft.Compute
- SKU or TotalLowPriorityCores for Microsoft.MachineLearningServices
 For Microsoft.Network PublicIPAddresses.
 */
export declare const UsagesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceName: string;
    readonly scope: string;
}, {
    readonly id?: string | undefined;
    readonly name?: string | undefined;
    readonly systemData?: {
        readonly createdAt?: string | undefined;
        readonly createdBy?: string | undefined;
        readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        readonly lastModifiedAt?: string | undefined;
        readonly lastModifiedBy?: string | undefined;
        readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
    } | undefined;
    readonly type?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const UsagesListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type UsagesListInput = typeof UsagesListInput.Type;
export declare const UsagesListOutput: Schema.Struct<{
    readonly value: Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        readonly name: Schema.optional<Schema.String>;
        readonly type: Schema.optional<Schema.String>;
        readonly systemData: Schema.optional<Schema.Struct<{
            readonly createdBy: Schema.optional<Schema.String>;
            readonly createdByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly createdAt: Schema.optional<Schema.String>;
            readonly lastModifiedBy: Schema.optional<Schema.String>;
            readonly lastModifiedByType: Schema.optional<Schema.Literals<readonly ["User", "Application", "ManagedIdentity", "Key"]>>;
            readonly lastModifiedAt: Schema.optional<Schema.String>;
        }>>;
    }>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type UsagesListOutput = typeof UsagesListOutput.Type;
/**
 * Get a list of current usage for all resources for the scope specified.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 */
export declare const UsagesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly scope: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value: readonly {
        readonly id?: string | undefined;
        readonly name?: string | undefined;
        readonly systemData?: {
            readonly createdAt?: string | undefined;
            readonly createdBy?: string | undefined;
            readonly createdByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
            readonly lastModifiedAt?: string | undefined;
            readonly lastModifiedBy?: string | undefined;
            readonly lastModifiedByType?: "Application" | "Key" | "ManagedIdentity" | "User" | undefined;
        } | undefined;
        readonly type?: string | undefined;
    }[];
}, never, import("../credentials.ts").Credentials>;
//# sourceMappingURL=quota.d.ts.map