/**
 * Azure Consumption 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 AggregatedCostGetByManagementGroupInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type AggregatedCostGetByManagementGroupInput = typeof AggregatedCostGetByManagementGroupInput.Type;
export declare const AggregatedCostGetByManagementGroupOutput: 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 AggregatedCostGetByManagementGroupOutput = typeof AggregatedCostGetByManagementGroupOutput.Type;
/**
 * Provides the aggregate cost of a management group and all child management groups by current billing period.
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - Order Id of the reservation
 * @param $filter - Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'
 */
export declare const AggregatedCostGetByManagementGroup: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": 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 AggregatedCostGetForBillingPeriodByManagementGroupInput: Schema.Struct<{
    readonly managementGroupId: Schema.String;
    readonly billingPeriodName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type AggregatedCostGetForBillingPeriodByManagementGroupInput = typeof AggregatedCostGetForBillingPeriodByManagementGroupInput.Type;
export declare const AggregatedCostGetForBillingPeriodByManagementGroupOutput: 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 AggregatedCostGetForBillingPeriodByManagementGroupOutput = typeof AggregatedCostGetForBillingPeriodByManagementGroupOutput.Type;
/**
 * Provides the aggregate cost of a management group and all child management groups by specified billing period
 *
 * @param api-version - The API version to use for this operation.
 * @param managementGroupId - Order Id of the reservation
 * @param billingPeriodName - Billing Period Name.
 */
export declare const AggregatedCostGetForBillingPeriodByManagementGroup: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingPeriodName: 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 BalancesGetByBillingAccountInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BalancesGetByBillingAccountInput = typeof BalancesGetByBillingAccountInput.Type;
export declare const BalancesGetByBillingAccountOutput: 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 BalancesGetByBillingAccountOutput = typeof BalancesGetByBillingAccountOutput.Type;
/**
 * Gets the balances for a scope by billingAccountId. Balances are available via this API only for May 1, 2014 or later.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 */
export declare const BalancesGetByBillingAccount: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: 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 BalancesGetForBillingPeriodByBillingAccountInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingPeriodName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BalancesGetForBillingPeriodByBillingAccountInput = typeof BalancesGetForBillingPeriodByBillingAccountInput.Type;
export declare const BalancesGetForBillingPeriodByBillingAccountOutput: 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 BalancesGetForBillingPeriodByBillingAccountOutput = typeof BalancesGetForBillingPeriodByBillingAccountOutput.Type;
/**
 * Gets the balances for a scope by billing period and billingAccountId. Balances are available via this API only for May 1, 2014 or later.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingPeriodName - Billing Period Name.
 */
export declare const BalancesGetForBillingPeriodByBillingAccount: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingPeriodName: 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 BudgetsCreateOrUpdateInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly budgetName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BudgetsCreateOrUpdateInput = typeof BudgetsCreateOrUpdateInput.Type;
export declare const BudgetsCreateOrUpdateOutput: Schema.Struct<{}>;
export type BudgetsCreateOrUpdateOutput = typeof BudgetsCreateOrUpdateOutput.Type;
/**
 * The operation to create or update a budget. You can optionally provide an eTag if desired as a form of concurrency control. To obtain the latest eTag for a given budget, perform a get operation prior to your 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 budgetName - Budget Name.
 */
export declare const BudgetsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly budgetName: string;
    readonly scope: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const BudgetsDeleteInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly budgetName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BudgetsDeleteInput = typeof BudgetsDeleteInput.Type;
export declare const BudgetsDeleteOutput: Schema.Void;
export type BudgetsDeleteOutput = typeof BudgetsDeleteOutput.Type;
/**
 * The operation to delete a budget.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param budgetName - Budget Name.
 */
export declare const BudgetsDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly budgetName: string;
    readonly scope: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const BudgetsGetInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly budgetName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BudgetsGetInput = typeof BudgetsGetInput.Type;
export declare const BudgetsGetOutput: Schema.Struct<{}>;
export type BudgetsGetOutput = typeof BudgetsGetOutput.Type;
/**
 * Gets the budget for the scope by budget name.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param budgetName - Budget Name.
 */
export declare const BudgetsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly budgetName: string;
    readonly scope: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const BudgetsListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type BudgetsListInput = typeof BudgetsListInput.Type;
export declare const BudgetsListOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type BudgetsListOutput = typeof BudgetsListOutput.Type;
/**
 * Lists all budgets for the defined scope.
 *
 * @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 BudgetsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly scope: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ChargesListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
    readonly startDate: Schema.optional<Schema.String>;
    readonly endDate: Schema.optional<Schema.String>;
    readonly $filter: Schema.optional<Schema.String>;
    readonly $apply: Schema.optional<Schema.String>;
}>;
export type ChargesListInput = typeof ChargesListInput.Type;
export declare const ChargesListOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
}>;
export type ChargesListOutput = typeof ChargesListOutput.Type;
/**
 * Lists the charges based for the defined scope.
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param startDate - Start date
 * @param endDate - End date
 * @param $filter - May be used to filter charges by properties/usageEnd (Utc time), properties/usageStart (Utc time). The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).
 * @param $apply - May be used to group charges for billingAccount scope by properties/billingProfileId, properties/invoiceSectionId, properties/customerId (specific for Partner Led), or for billingProfile scope by properties/invoiceSectionId.
 */
export declare const ChargesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $apply?: string | undefined;
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly endDate?: string | undefined;
    readonly scope: string;
    readonly startDate?: string | undefined;
}, {
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const CreditsGetInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingProfileId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CreditsGetInput = typeof CreditsGetInput.Type;
export declare const CreditsGetOutput: Schema.Struct<{}>;
export type CreditsGetOutput = typeof CreditsGetOutput.Type;
/**
 * The credit summary by billingAccountId and billingProfileId.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingProfileId - Azure Billing Profile ID.
 */
export declare const CreditsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingProfileId: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const EventsListByBillingAccountInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type EventsListByBillingAccountInput = typeof EventsListByBillingAccountInput.Type;
export declare const EventsListByBillingAccountOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type EventsListByBillingAccountOutput = typeof EventsListByBillingAccountOutput.Type;
/**
 * Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param $filter - May be used to filter the events by lotId, lotSource etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).
 */
export declare const EventsListByBillingAccount: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly billingAccountId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const EventsListByBillingProfileInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingProfileId: Schema.String;
    readonly "api-version": Schema.String;
    readonly startDate: Schema.String;
    readonly endDate: Schema.String;
}>;
export type EventsListByBillingProfileInput = typeof EventsListByBillingProfileInput.Type;
export declare const EventsListByBillingProfileOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type EventsListByBillingProfileOutput = typeof EventsListByBillingProfileOutput.Type;
/**
 * Lists the events that decrements Azure credits or Microsoft Azure consumption commitment for a billing account or a billing profile for a given start and end date.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingProfileId - Azure Billing Profile ID.
 * @param startDate - Start date
 * @param endDate - End date
 */
export declare const EventsListByBillingProfile: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingProfileId: string;
    readonly endDate: string;
    readonly startDate: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const LotsListByBillingAccountInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type LotsListByBillingAccountInput = typeof LotsListByBillingAccountInput.Type;
export declare const LotsListByBillingAccountOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type LotsListByBillingAccountOutput = typeof LotsListByBillingAccountOutput.Type;
/**
 * Lists all Microsoft Azure consumption commitments for a billing account. The API is only supported for Microsoft Customer Agreements (MCA) and Direct Enterprise Agreement (EA)  billing accounts.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param $filter - May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:).
 */
export declare const LotsListByBillingAccount: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly billingAccountId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const LotsListByBillingProfileInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingProfileId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type LotsListByBillingProfileInput = typeof LotsListByBillingProfileInput.Type;
export declare const LotsListByBillingProfileOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type LotsListByBillingProfileOutput = typeof LotsListByBillingProfileOutput.Type;
/**
 * Lists all Azure credits for a billing account or a billing profile. The API is only supported for Microsoft Customer Agreements (MCA) billing accounts.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingProfileId - Azure Billing Profile ID.
 */
export declare const LotsListByBillingProfile: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingProfileId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const LotsListByCustomerInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly customerId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type LotsListByCustomerInput = typeof LotsListByCustomerInput.Type;
export declare const LotsListByCustomerOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{}>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type LotsListByCustomerOutput = typeof LotsListByCustomerOutput.Type;
/**
 * Lists all Azure credits for a customer. The API is only supported for Microsoft Partner  Agreements (MPA) billing accounts.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param customerId - Customer ID
 * @param $filter - May be used to filter the lots by Status, Source etc. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. Tag filter is a key value pair string where key and value is separated by a colon (:).
 */
export declare const LotsListByCustomer: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly customerId: string;
}, {
    readonly nextLink?: string | undefined;
    readonly value?: readonly {}[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const MarketplacesListInput: 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 MarketplacesListInput = typeof MarketplacesListInput.Type;
export declare const MarketplacesListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 MarketplacesListOutput = typeof MarketplacesListOutput.Type;
/**
 * Lists the marketplaces for a scope at the defined scope. Marketplaces are available via this API only for May 1, 2014 or later.
 *
 * @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 - May be used to filter marketplaces by properties/usageEnd (Utc time), properties/usageStart (Utc time), properties/resourceGroup, properties/instanceName or properties/instanceId. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'.
 * @param $top - May be used to limit the number of results to the most recent N marketplaces.
 * @param $skiptoken - Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.
 */
export declare const MarketplacesList: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const OperationsListInput: Schema.Struct<{
    readonly "api-version": Schema.String;
}>;
export type OperationsListInput = typeof OperationsListInput.Type;
export declare const OperationsListOutput: Schema.Struct<{
    readonly value: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly id: Schema.optional<Schema.String>;
        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 nextLink: Schema.optional<Schema.String>;
}>;
export type OperationsListOutput = typeof OperationsListOutput.Type;
/**
 * List the operations for the provider
 *
 * @param api-version - The API version to use for this operation.
 */
export declare const OperationsList: 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 id?: string | undefined;
        readonly name?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const PriceSheetDownloadByBillingAccountPeriodInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingPeriodName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type PriceSheetDownloadByBillingAccountPeriodInput = typeof PriceSheetDownloadByBillingAccountPeriodInput.Type;
export declare const PriceSheetDownloadByBillingAccountPeriodOutput: Schema.Struct<{
    readonly status: Schema.optional<Schema.Literals<readonly ["Running", "Completed", "Failed"]>>;
    readonly properties: Schema.optional<Schema.Struct<{
        readonly downloadUrl: Schema.optional<Schema.String>;
        readonly validTill: Schema.optional<Schema.String>;
    }>>;
}>;
export type PriceSheetDownloadByBillingAccountPeriodOutput = typeof PriceSheetDownloadByBillingAccountPeriodOutput.Type;
/**
 * Generates the pricesheet for the provided billing period asynchronously based on the enrollment id
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingPeriodName - Billing Period Name.
 */
export declare const PriceSheetDownloadByBillingAccountPeriod: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingPeriodName: string;
}, {
    readonly properties?: {
        readonly downloadUrl?: string | undefined;
        readonly validTill?: string | undefined;
    } | undefined;
    readonly status?: "Completed" | "Failed" | "Running" | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const PriceSheetGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $expand: Schema.optional<Schema.String>;
    readonly $skiptoken: Schema.optional<Schema.String>;
    readonly $top: Schema.optional<Schema.Number>;
}>;
export type PriceSheetGetInput = typeof PriceSheetGetInput.Type;
export declare const PriceSheetGetOutput: Schema.Struct<{}>;
export type PriceSheetGetOutput = typeof PriceSheetGetOutput.Type;
/**
 * Gets the price sheet for a subscription. Price sheet is available via this API only for May 1, 2014 or later.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription.
 * @param $expand - May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.
 * @param $skiptoken - Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.
 * @param $top - May be used to limit the number of results to the top N results.
 */
export declare const PriceSheetGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $expand?: string | undefined;
    readonly $skiptoken?: string | undefined;
    readonly $top?: number | undefined;
    readonly "api-version": string;
    readonly subscriptionId: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const PriceSheetGetByBillingPeriodInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly billingPeriodName: Schema.String;
    readonly "api-version": Schema.String;
    readonly $expand: Schema.optional<Schema.String>;
    readonly $skiptoken: Schema.optional<Schema.String>;
    readonly $top: Schema.optional<Schema.Number>;
}>;
export type PriceSheetGetByBillingPeriodInput = typeof PriceSheetGetByBillingPeriodInput.Type;
export declare const PriceSheetGetByBillingPeriodOutput: Schema.Struct<{}>;
export type PriceSheetGetByBillingPeriodOutput = typeof PriceSheetGetByBillingPeriodOutput.Type;
/**
 * Get the price sheet for a scope by subscriptionId and billing period. Price sheet is available via this API only for May 1, 2014 or later.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription.
 * @param billingPeriodName - Billing Period Name.
 * @param $expand - May be used to expand the properties/meterDetails within a price sheet. By default, these fields are not included when returning price sheet.
 * @param $skiptoken - Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.
 * @param $top - May be used to limit the number of results to the top N results.
 */
export declare const PriceSheetGetByBillingPeriod: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $expand?: string | undefined;
    readonly $skiptoken?: string | undefined;
    readonly $top?: number | undefined;
    readonly "api-version": string;
    readonly billingPeriodName: string;
    readonly subscriptionId: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const ReservationRecommendationDetailsGetInput: Schema.Struct<{
    readonly resourceScope: Schema.String;
    readonly "api-version": Schema.String;
    readonly scope: Schema.Literals<readonly ["Single", "Shared"]>;
    readonly region: Schema.String;
    readonly term: Schema.Literals<readonly ["P1M", "P1Y", "P3Y"]>;
    readonly lookBackPeriod: Schema.Literals<readonly ["Last7Days", "Last30Days", "Last60Days"]>;
    readonly product: Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type ReservationRecommendationDetailsGetInput = typeof ReservationRecommendationDetailsGetInput.Type;
export declare const ReservationRecommendationDetailsGetOutput: 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 ReservationRecommendationDetailsGetOutput = typeof ReservationRecommendationDetailsGetOutput.Type;
/**
 * Details of a reservation recommendation for what-if analysis of reserved instances.
 *
 * @param api-version - The API version to use for this operation.
 * @param resourceScope - The scope associated with reservation recommendation details operations. This includes '/subscriptions/{subscriptionId}/' for subscription scope, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for resource group scope, /providers/Microsoft.Billing/billingAccounts/{billingAccountId}' for BillingAccount scope, and '/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingProfiles/{billingProfileId}' for billingProfile scope
 * @param scope - Scope of the reservation.
 * @param region - Used to select the region the recommendation should be generated for.
 * @param term - Specify length of reservation recommendation term.
 * @param lookBackPeriod - Filter the time period on which reservation recommendation results are based.
 * @param product - Filter the products for which reservation recommendation results are generated. Examples: Standard_DS1_v2 (for VM), Premium_SSD_Managed_Disks_P30 (for Managed Disks)
 * @param $filter - Used to filter reservation recommendation details by: properties/subscriptionId can be specified for billing account and billing profile paths.
 */
export declare const ReservationRecommendationDetailsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly lookBackPeriod: "Last30Days" | "Last60Days" | "Last7Days";
    readonly product: string;
    readonly region: string;
    readonly resourceScope: string;
    readonly scope: "Shared" | "Single";
    readonly term: "P1M" | "P1Y" | "P3Y";
}, {
    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 ReservationRecommendationsListInput: Schema.Struct<{
    readonly resourceScope: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type ReservationRecommendationsListInput = typeof ReservationRecommendationsListInput.Type;
export declare const ReservationRecommendationsListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 location: Schema.optional<Schema.String>;
        readonly sku: Schema.optional<Schema.String>;
        readonly etag: Schema.optional<Schema.String>;
        readonly tags: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
        readonly kind: Schema.Literals<readonly ["legacy", "modern"]>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
    readonly previousLink: Schema.optional<Schema.String>;
}>;
export type ReservationRecommendationsListOutput = typeof ReservationRecommendationsListOutput.Type;
/**
 * List of recommendations for purchasing reserved instances.
 *
 * @param api-version - The API version to use for this operation.
 * @param resourceScope - The fully qualified Azure Resource manager identifier of the resource.
 * @param $filter - May be used to filter reservationRecommendations by: properties/scope with allowed values ['Single', 'Shared'] and default value 'Single'; properties/resourceType with allowed values ['VirtualMachines', 'SQLDatabases', 'PostgreSQL', 'ManagedDisk', 'MySQL', 'RedHat', 'MariaDB', 'RedisCache', 'CosmosDB', 'SqlDataWarehouse', 'SUSELinux', 'AppService', 'BlockBlob', 'AzureDataExplorer', 'VMwareCloudSimple'] and default value 'VirtualMachines'; and properties/lookBackPeriod with allowed values ['Last7Days', 'Last30Days', 'Last60Days'] and default value 'Last7Days'.
 */
export declare const ReservationRecommendationsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly resourceScope: string;
}, {
    readonly nextLink?: string | undefined;
    readonly previousLink?: string | undefined;
    readonly value?: readonly {
        readonly etag?: string | undefined;
        readonly id?: string | undefined;
        readonly kind: "legacy" | "modern";
        readonly location?: string | undefined;
        readonly name?: string | undefined;
        readonly sku?: 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 tags?: {
            readonly [x: string]: string;
        } | undefined;
        readonly type?: string | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsDetailsListInput: Schema.Struct<{
    readonly resourceScope: Schema.String;
    readonly "api-version": Schema.String;
    readonly startDate: Schema.optional<Schema.String>;
    readonly endDate: Schema.optional<Schema.String>;
    readonly $filter: Schema.optional<Schema.String>;
    readonly reservationId: Schema.optional<Schema.String>;
    readonly reservationOrderId: Schema.optional<Schema.String>;
}>;
export type ReservationsDetailsListInput = typeof ReservationsDetailsListInput.Type;
export declare const ReservationsDetailsListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsDetailsListOutput = typeof ReservationsDetailsListOutput.Type;
/**
 * Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.
 *
 * @param api-version - The API version to use for this operation.
 * @param resourceScope - The fully qualified Azure Resource manager identifier of the resource.
 * @param startDate - Start date. Only applicable when querying with billing profile
 * @param endDate - End date. Only applicable when querying with billing profile
 * @param $filter - Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'. Not applicable when querying with billing profile
 * @param reservationId - Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation
 * @param reservationOrderId - Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order
 */
export declare const ReservationsDetailsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly endDate?: string | undefined;
    readonly reservationId?: string | undefined;
    readonly reservationOrderId?: string | undefined;
    readonly resourceScope: string;
    readonly startDate?: string | undefined;
}, {
    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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsDetailsListByReservationOrderInput: Schema.Struct<{
    readonly reservationOrderId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.String;
}>;
export type ReservationsDetailsListByReservationOrderInput = typeof ReservationsDetailsListByReservationOrderInput.Type;
export declare const ReservationsDetailsListByReservationOrderOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsDetailsListByReservationOrderOutput = typeof ReservationsDetailsListByReservationOrderOutput.Type;
/**
 * Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.
 *
 * @param api-version - The API version to use for this operation.
 * @param reservationOrderId - Order Id of the reservation
 * @param $filter - Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'
 */
export declare const ReservationsDetailsListByReservationOrder: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter: string;
    readonly "api-version": string;
    readonly reservationOrderId: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsDetailsListByReservationOrderAndReservationInput: Schema.Struct<{
    readonly reservationOrderId: Schema.String;
    readonly reservationId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.String;
}>;
export type ReservationsDetailsListByReservationOrderAndReservationInput = typeof ReservationsDetailsListByReservationOrderAndReservationInput.Type;
export declare const ReservationsDetailsListByReservationOrderAndReservationOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsDetailsListByReservationOrderAndReservationOutput = typeof ReservationsDetailsListByReservationOrderAndReservationOutput.Type;
/**
 * Lists the reservations details for provided date range. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. If the data size is too large, customers may also get 504 as the API timed out preparing the data. In such cases, API call should be made with smaller date ranges or a call to Generate Reservation Details Report API should be made as it is asynchronous and will not run into response size time outs.
 *
 * @param api-version - The API version to use for this operation.
 * @param reservationOrderId - Order Id of the reservation
 * @param reservationId - Id of the reservation
 * @param $filter - Filter reservation details by date range. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'
 */
export declare const ReservationsDetailsListByReservationOrderAndReservation: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter: string;
    readonly "api-version": string;
    readonly reservationId: string;
    readonly reservationOrderId: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsSummariesListInput: Schema.Struct<{
    readonly resourceScope: Schema.String;
    readonly "api-version": Schema.String;
    readonly grain: Schema.Literals<readonly ["daily", "monthly"]>;
    readonly startDate: Schema.optional<Schema.String>;
    readonly endDate: Schema.optional<Schema.String>;
    readonly $filter: Schema.optional<Schema.String>;
    readonly reservationId: Schema.optional<Schema.String>;
    readonly reservationOrderId: Schema.optional<Schema.String>;
}>;
export type ReservationsSummariesListInput = typeof ReservationsSummariesListInput.Type;
export declare const ReservationsSummariesListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsSummariesListOutput = typeof ReservationsSummariesListOutput.Type;
/**
 * Lists the reservations summaries for the defined scope daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.
 *
 * @param api-version - The API version to use for this operation.
 * @param resourceScope - The fully qualified Azure Resource manager identifier of the resource.
 * @param grain - Can be daily or monthly
 * @param startDate - Start date. Only applicable when querying with billing profile
 * @param endDate - End date. Only applicable when querying with billing profile
 * @param $filter - Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'. Not applicable when querying with billing profile
 * @param reservationId - Reservation Id GUID. Only valid if reservationOrderId is also provided. Filter to a specific reservation
 * @param reservationOrderId - Reservation Order Id GUID. Required if reservationId is provided. Filter to a specific reservation order
 */
export declare const ReservationsSummariesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly endDate?: string | undefined;
    readonly grain: "daily" | "monthly";
    readonly reservationId?: string | undefined;
    readonly reservationOrderId?: string | undefined;
    readonly resourceScope: string;
    readonly startDate?: string | undefined;
}, {
    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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsSummariesListByReservationOrderInput: Schema.Struct<{
    readonly reservationOrderId: Schema.String;
    readonly "api-version": Schema.String;
    readonly grain: Schema.Literals<readonly ["daily", "monthly"]>;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type ReservationsSummariesListByReservationOrderInput = typeof ReservationsSummariesListByReservationOrderInput.Type;
export declare const ReservationsSummariesListByReservationOrderOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsSummariesListByReservationOrderOutput = typeof ReservationsSummariesListByReservationOrderOutput.Type;
/**
 * Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.
 *
 * @param api-version - The API version to use for this operation.
 * @param reservationOrderId - Order Id of the reservation
 * @param grain - Can be daily or monthly
 * @param $filter - Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'
 */
export declare const ReservationsSummariesListByReservationOrder: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly grain: "daily" | "monthly";
    readonly reservationOrderId: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationsSummariesListByReservationOrderAndReservationInput: Schema.Struct<{
    readonly reservationOrderId: Schema.String;
    readonly reservationId: Schema.String;
    readonly "api-version": Schema.String;
    readonly grain: Schema.Literals<readonly ["daily", "monthly"]>;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type ReservationsSummariesListByReservationOrderAndReservationInput = typeof ReservationsSummariesListByReservationOrderAndReservationInput.Type;
export declare const ReservationsSummariesListByReservationOrderAndReservationOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationsSummariesListByReservationOrderAndReservationOutput = typeof ReservationsSummariesListByReservationOrderAndReservationOutput.Type;
/**
 * Lists the reservations summaries for daily or monthly grain. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.
 *
 * @param api-version - The API version to use for this operation.
 * @param reservationOrderId - Order Id of the reservation
 * @param reservationId - Id of the reservation
 * @param grain - Can be daily or monthly
 * @param $filter - Required only for daily grain. The properties/UsageDate for start date and end date. The filter supports 'le' and  'ge'
 */
export declare const ReservationsSummariesListByReservationOrderAndReservation: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly grain: "daily" | "monthly";
    readonly reservationId: string;
    readonly reservationOrderId: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationTransactionsListInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
    readonly useMarkupIfPartner: Schema.optional<Schema.Boolean>;
    readonly previewMarkupPercentage: Schema.optional<Schema.Number>;
}>;
export type ReservationTransactionsListInput = typeof ReservationTransactionsListInput.Type;
export declare const ReservationTransactionsListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationTransactionsListOutput = typeof ReservationTransactionsListOutput.Type;
/**
 * List of transactions for reserved instances on billing account scope. Note: The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param $filter - Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and  'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for the entire December 2020 month (i.e. will contain records for dates December 30 and 31)
 * @param useMarkupIfPartner - Applies mark up to the transactions if the caller is a partner.
 * @param previewMarkupPercentage - Preview markup percentage to be applied.
 */
export declare const ReservationTransactionsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly previewMarkupPercentage?: number | undefined;
    readonly useMarkupIfPartner?: boolean | undefined;
}, {
    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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const ReservationTransactionsListByBillingProfileInput: Schema.Struct<{
    readonly billingAccountId: Schema.String;
    readonly billingProfileId: Schema.String;
    readonly "api-version": Schema.String;
    readonly $filter: Schema.optional<Schema.String>;
}>;
export type ReservationTransactionsListByBillingProfileInput = typeof ReservationTransactionsListByBillingProfileInput.Type;
export declare const ReservationTransactionsListByBillingProfileOutput: Schema.Struct<{
    readonly value: Schema.optional<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 ReservationTransactionsListByBillingProfileOutput = typeof ReservationTransactionsListByBillingProfileOutput.Type;
/**
 * List of transactions for reserved instances on billing profile scope. The refund transactions are posted along with its purchase transaction (i.e. in the purchase billing month). For example, The refund is requested in May 2021. This refund transaction will have event date as May 2021 but the billing month as April 2020 when the reservation purchase was made. Note: ARM has a payload size limit of 12MB, so currently callers get 400 when the response size exceeds the ARM limit. In such cases, API call should be made with smaller date ranges.
 *
 * @param api-version - The API version to use for this operation.
 * @param billingAccountId - BillingAccount ID
 * @param billingProfileId - Azure Billing Profile ID.
 * @param $filter - Filter reservation transactions by date range. The properties/EventDate for start date and end date. The filter supports 'le' and  'ge'. Note: API returns data for the entire start date's and end date's billing month. For example, filter properties/eventDate+ge+2020-01-01+AND+properties/eventDate+le+2020-12-29 will include data for entire December 2020 month (i.e. will contain records for dates December 30 and 31)
 */
export declare const ReservationTransactionsListByBillingProfile: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $filter?: string | undefined;
    readonly "api-version": string;
    readonly billingAccountId: string;
    readonly billingProfileId: 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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const TagsGetInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type TagsGetInput = typeof TagsGetInput.Type;
export declare const TagsGetOutput: Schema.Struct<{}>;
export type TagsGetOutput = typeof TagsGetOutput.Type;
/**
 * Get all available tag keys for the defined scope
 *
 * @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 TagsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly scope: string;
}, {}, never, import("../credentials.ts").Credentials>;
export declare const UsageDetailsListInput: Schema.Struct<{
    readonly scope: Schema.String;
    readonly "api-version": Schema.String;
    readonly $expand: Schema.optional<Schema.String>;
    readonly $filter: Schema.optional<Schema.String>;
    readonly $skiptoken: Schema.optional<Schema.String>;
    readonly $top: Schema.optional<Schema.Number>;
    readonly metric: Schema.optional<Schema.Literals<readonly ["actualcost", "amortizedcost", "usage"]>>;
}>;
export type UsageDetailsListInput = typeof UsageDetailsListInput.Type;
export declare const UsageDetailsListOutput: Schema.Struct<{
    readonly value: Schema.optional<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 UsageDetailsListOutput = typeof UsageDetailsListOutput.Type;
/**
 * Lists the usage details for the defined scope. Usage details are available via this API only for May 1, 2014 or later.
 * **Note:Microsoft will be retiring the Consumption Usage Details API at some point in the future. We do not recommend that you take a new dependency on this API. Please use the Cost Details API instead. We will notify customers once a date for retirement has been determined.For Learn more,see [Generate Cost Details Report - Create Operation](https://learn.microsoft.com/en-us/rest/api/cost-management/generate-cost-details-report/create-operation?tabs=HTTP)**
 *
 * @param api-version - The API version to use for this operation.
 * @param scope - The fully qualified Azure Resource manager identifier of the resource.
 * @param $expand - May be used to expand the properties/additionalInfo or properties/meterDetails within a list of usage details. By default, these fields are not included when listing usage details.
 * @param $filter - May be used to filter usageDetails by properties/resourceGroup, properties/resourceName, properties/resourceId, properties/chargeType, properties/reservationId, properties/publisherType or tags. The filter supports 'eq', 'lt', 'gt', 'le', 'ge', and 'and'. It does not currently support 'ne', 'or', or 'not'. Tag filter is a key value pair string where key and value is separated by a colon (:). PublisherType Filter accepts two values azure and marketplace and it is currently supported for Web Direct Offer Type
 * @param $skiptoken - Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls.
 * @param $top - May be used to limit the number of results to the most recent N usageDetails.
 * @param metric - Allows to select different type of cost/usage records.
 */
export declare const UsageDetailsList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly $expand?: string | undefined;
    readonly $filter?: string | undefined;
    readonly $skiptoken?: string | undefined;
    readonly $top?: number | undefined;
    readonly "api-version": string;
    readonly metric?: "actualcost" | "amortizedcost" | "usage" | undefined;
    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;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
//# sourceMappingURL=consumption.d.ts.map