/**
 * Azure Communication 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 CommunicationServicesCheckNameAvailabilityInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesCheckNameAvailabilityInput = typeof CommunicationServicesCheckNameAvailabilityInput.Type;
export declare const CommunicationServicesCheckNameAvailabilityOutput: Schema.Struct<{
    readonly nameAvailable: Schema.optional<Schema.Boolean>;
    readonly reason: Schema.optional<Schema.Literals<readonly ["Invalid", "AlreadyExists"]>>;
    readonly message: Schema.optional<Schema.String>;
}>;
export type CommunicationServicesCheckNameAvailabilityOutput = typeof CommunicationServicesCheckNameAvailabilityOutput.Type;
/**
 * Check Name Availability
 *
 * Checks that the CommunicationService name is valid and is not already in use.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const CommunicationServicesCheckNameAvailability: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly subscriptionId: string;
}, {
    readonly message?: string | undefined;
    readonly nameAvailable?: boolean | undefined;
    readonly reason?: "AlreadyExists" | "Invalid" | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const CommunicationServicesCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesCreateOrUpdateInput = typeof CommunicationServicesCreateOrUpdateInput.Type;
export declare const CommunicationServicesCreateOrUpdateOutput: 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 CommunicationServicesCreateOrUpdateOutput = typeof CommunicationServicesCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Create a new CommunicationService or update an existing CommunicationService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: 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 CommunicationServicesDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesDeleteInput = typeof CommunicationServicesDeleteInput.Type;
export declare const CommunicationServicesDeleteOutput: Schema.Void;
export type CommunicationServicesDeleteOutput = typeof CommunicationServicesDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a CommunicationService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const CommunicationServicesGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesGetInput = typeof CommunicationServicesGetInput.Type;
export declare const CommunicationServicesGetOutput: 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 CommunicationServicesGetOutput = typeof CommunicationServicesGetOutput.Type;
/**
 * Get
 *
 * Get the CommunicationService and its properties.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: 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 CommunicationServicesLinkNotificationHubInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesLinkNotificationHubInput = typeof CommunicationServicesLinkNotificationHubInput.Type;
export declare const CommunicationServicesLinkNotificationHubOutput: Schema.Struct<{
    readonly resourceId: Schema.optional<Schema.String>;
}>;
export type CommunicationServicesLinkNotificationHubOutput = typeof CommunicationServicesLinkNotificationHubOutput.Type;
/**
 * Link Notification Hub
 *
 * Links an Azure Notification Hub to this communication service.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesLinkNotificationHub: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, {
    readonly resourceId?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const CommunicationServicesListByResourceGroupInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesListByResourceGroupInput = typeof CommunicationServicesListByResourceGroupInput.Type;
export declare const CommunicationServicesListByResourceGroupOutput: 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 CommunicationServicesListByResourceGroupOutput = typeof CommunicationServicesListByResourceGroupOutput.Type;
/**
 * List By Resource Group
 *
 * Handles requests to list all resources in a resource group.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 */
export declare const CommunicationServicesListByResourceGroup: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceGroupName: 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 CommunicationServicesListBySubscriptionInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesListBySubscriptionInput = typeof CommunicationServicesListBySubscriptionInput.Type;
export declare const CommunicationServicesListBySubscriptionOutput: 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 CommunicationServicesListBySubscriptionOutput = typeof CommunicationServicesListBySubscriptionOutput.Type;
/**
 * List By Subscription
 *
 * Handles requests to list all resources in a subscription.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const CommunicationServicesListBySubscription: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": 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 CommunicationServicesListKeysInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesListKeysInput = typeof CommunicationServicesListKeysInput.Type;
export declare const CommunicationServicesListKeysOutput: Schema.Struct<{
    readonly primaryKey: Schema.optional<Schema.String>;
    readonly secondaryKey: Schema.optional<Schema.String>;
    readonly primaryConnectionString: Schema.optional<Schema.String>;
    readonly secondaryConnectionString: Schema.optional<Schema.String>;
}>;
export type CommunicationServicesListKeysOutput = typeof CommunicationServicesListKeysOutput.Type;
/**
 * List Keys
 *
 * Get the access keys of the CommunicationService resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesListKeys: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, {
    readonly primaryConnectionString?: string | undefined;
    readonly primaryKey?: string | undefined;
    readonly secondaryConnectionString?: string | undefined;
    readonly secondaryKey?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const CommunicationServicesRegenerateKeyInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesRegenerateKeyInput = typeof CommunicationServicesRegenerateKeyInput.Type;
export declare const CommunicationServicesRegenerateKeyOutput: Schema.Struct<{
    readonly primaryKey: Schema.optional<Schema.String>;
    readonly secondaryKey: Schema.optional<Schema.String>;
    readonly primaryConnectionString: Schema.optional<Schema.String>;
    readonly secondaryConnectionString: Schema.optional<Schema.String>;
}>;
export type CommunicationServicesRegenerateKeyOutput = typeof CommunicationServicesRegenerateKeyOutput.Type;
/**
 * Regenerate Key
 *
 * Regenerate CommunicationService access key. PrimaryKey and SecondaryKey cannot be regenerated at the same time.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesRegenerateKey: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, {
    readonly primaryConnectionString?: string | undefined;
    readonly primaryKey?: string | undefined;
    readonly secondaryConnectionString?: string | undefined;
    readonly secondaryKey?: string | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const CommunicationServicesUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type CommunicationServicesUpdateInput = typeof CommunicationServicesUpdateInput.Type;
export declare const CommunicationServicesUpdateOutput: 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 CommunicationServicesUpdateOutput = typeof CommunicationServicesUpdateOutput.Type;
/**
 * Update
 *
 * Operation to update an existing CommunicationService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const CommunicationServicesUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: 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 DomainsCancelVerificationInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsCancelVerificationInput = typeof DomainsCancelVerificationInput.Type;
export declare const DomainsCancelVerificationOutput: Schema.Void;
export type DomainsCancelVerificationOutput = typeof DomainsCancelVerificationOutput.Type;
/**
 * Cancel Verification
 *
 * Cancel verification of DNS record.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsCancelVerification: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const DomainsCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsCreateOrUpdateInput = typeof DomainsCreateOrUpdateInput.Type;
export declare const DomainsCreateOrUpdateOutput: 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 DomainsCreateOrUpdateOutput = typeof DomainsCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Add a new Domains resource under the parent EmailService resource or update an existing Domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 DomainsDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsDeleteInput = typeof DomainsDeleteInput.Type;
export declare const DomainsDeleteOutput: Schema.Void;
export type DomainsDeleteOutput = typeof DomainsDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a Domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const DomainsGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsGetInput = typeof DomainsGetInput.Type;
export declare const DomainsGetOutput: 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 DomainsGetOutput = typeof DomainsGetOutput.Type;
/**
 * Get
 *
 * Get the Domains resource and its properties.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 DomainsInitiateVerificationInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsInitiateVerificationInput = typeof DomainsInitiateVerificationInput.Type;
export declare const DomainsInitiateVerificationOutput: Schema.Void;
export type DomainsInitiateVerificationOutput = typeof DomainsInitiateVerificationOutput.Type;
/**
 * Initiate Verification
 *
 * Initiate verification of DNS record.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsInitiateVerification: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const DomainsListByEmailServiceResourceInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsListByEmailServiceResourceInput = typeof DomainsListByEmailServiceResourceInput.Type;
export declare const DomainsListByEmailServiceResourceOutput: 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 DomainsListByEmailServiceResourceOutput = typeof DomainsListByEmailServiceResourceOutput.Type;
/**
 * List by EmailService
 *
 * Handles requests to list all Domains resources under the parent EmailServices resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 */
export declare const DomainsListByEmailServiceResource: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 DomainsUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type DomainsUpdateInput = typeof DomainsUpdateInput.Type;
export declare const DomainsUpdateOutput: 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 DomainsUpdateOutput = typeof DomainsUpdateOutput.Type;
/**
 * Update
 *
 * Operation to update an existing Domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const DomainsUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 EmailServicesCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesCreateOrUpdateInput = typeof EmailServicesCreateOrUpdateInput.Type;
export declare const EmailServicesCreateOrUpdateOutput: 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 EmailServicesCreateOrUpdateOutput = typeof EmailServicesCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Create a new EmailService or update an existing EmailService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 */
export declare const EmailServicesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 EmailServicesDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesDeleteInput = typeof EmailServicesDeleteInput.Type;
export declare const EmailServicesDeleteOutput: Schema.Void;
export type EmailServicesDeleteOutput = typeof EmailServicesDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a EmailService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 */
export declare const EmailServicesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const EmailServicesGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesGetInput = typeof EmailServicesGetInput.Type;
export declare const EmailServicesGetOutput: 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 EmailServicesGetOutput = typeof EmailServicesGetOutput.Type;
/**
 * Get
 *
 * Get the EmailService and its properties.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 */
export declare const EmailServicesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 EmailServicesListByResourceGroupInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesListByResourceGroupInput = typeof EmailServicesListByResourceGroupInput.Type;
export declare const EmailServicesListByResourceGroupOutput: 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 EmailServicesListByResourceGroupOutput = typeof EmailServicesListByResourceGroupOutput.Type;
/**
 * List By Resource Group
 *
 * Handles requests to list all resources in a resource group.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 */
export declare const EmailServicesListByResourceGroup: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly resourceGroupName: 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 EmailServicesListBySubscriptionInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesListBySubscriptionInput = typeof EmailServicesListBySubscriptionInput.Type;
export declare const EmailServicesListBySubscriptionOutput: 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 EmailServicesListBySubscriptionOutput = typeof EmailServicesListBySubscriptionOutput.Type;
/**
 * List By Subscription
 *
 * Handles requests to list all resources in a subscription.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const EmailServicesListBySubscription: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": 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 EmailServicesListVerifiedExchangeOnlineDomainsInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesListVerifiedExchangeOnlineDomainsInput = typeof EmailServicesListVerifiedExchangeOnlineDomainsInput.Type;
export declare const EmailServicesListVerifiedExchangeOnlineDomainsOutput: Schema.$Array<Schema.String>;
export type EmailServicesListVerifiedExchangeOnlineDomainsOutput = typeof EmailServicesListVerifiedExchangeOnlineDomainsOutput.Type;
/**
 * List Verified Domains From Exchange Online
 *
 * Get a list of domains that are fully verified in Exchange Online.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 */
export declare const EmailServicesListVerifiedExchangeOnlineDomains: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly subscriptionId: string;
}, readonly string[], never, import("../credentials.ts").Credentials>;
export declare const EmailServicesUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type EmailServicesUpdateInput = typeof EmailServicesUpdateInput.Type;
export declare const EmailServicesUpdateOutput: 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 EmailServicesUpdateOutput = typeof EmailServicesUpdateOutput.Type;
/**
 * Update
 *
 * Operation to update an existing EmailService.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 */
export declare const EmailServicesUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 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 name: Schema.optional<Schema.String>;
        readonly isDataAction: Schema.optional<Schema.Boolean>;
        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.Literals<readonly ["user", "system", "user,system"]>>;
        readonly actionType: Schema.optional<Schema.Literals<readonly ["Internal"]>>;
    }>>>;
    readonly nextLink: Schema.optional<Schema.String>;
}>;
export type OperationsListOutput = typeof OperationsListOutput.Type;
/**
 * List Operations
 *
 * Lists all of the available REST API operations of the Microsoft.Communication 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 actionType?: "Internal" | undefined;
        readonly display?: {
            readonly description?: string | undefined;
            readonly operation?: string | undefined;
            readonly provider?: string | undefined;
            readonly resource?: string | undefined;
        } | undefined;
        readonly isDataAction?: boolean | undefined;
        readonly name?: string | undefined;
        readonly origin?: "system" | "user" | "user,system" | undefined;
    }[] | undefined;
}, never, import("../credentials.ts").Credentials>;
export declare const SenderUsernamesCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly senderUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SenderUsernamesCreateOrUpdateInput = typeof SenderUsernamesCreateOrUpdateInput.Type;
export declare const SenderUsernamesCreateOrUpdateOutput: 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 SenderUsernamesCreateOrUpdateOutput = typeof SenderUsernamesCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Add a new SenderUsername resource under the parent Domains resource or update an existing SenderUsername resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param senderUsername - The valid sender Username.
 */
export declare const SenderUsernamesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly senderUsername: 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 SenderUsernamesDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly senderUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SenderUsernamesDeleteInput = typeof SenderUsernamesDeleteInput.Type;
export declare const SenderUsernamesDeleteOutput: Schema.Void;
export type SenderUsernamesDeleteOutput = typeof SenderUsernamesDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a SenderUsernames resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param senderUsername - The valid sender Username.
 */
export declare const SenderUsernamesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly senderUsername: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const SenderUsernamesGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly senderUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SenderUsernamesGetInput = typeof SenderUsernamesGetInput.Type;
export declare const SenderUsernamesGetOutput: 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 SenderUsernamesGetOutput = typeof SenderUsernamesGetOutput.Type;
/**
 * Get
 *
 * Get a valid sender username for a domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param senderUsername - The valid sender Username.
 */
export declare const SenderUsernamesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly senderUsername: 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 SenderUsernamesListByDomainsInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SenderUsernamesListByDomainsInput = typeof SenderUsernamesListByDomainsInput.Type;
export declare const SenderUsernamesListByDomainsOutput: 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 SenderUsernamesListByDomainsOutput = typeof SenderUsernamesListByDomainsOutput.Type;
/**
 * ListBy_Domains
 *
 * List all valid sender usernames for a domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const SenderUsernamesListByDomains: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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 SmtpUsernamesCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly smtpUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SmtpUsernamesCreateOrUpdateInput = typeof SmtpUsernamesCreateOrUpdateInput.Type;
export declare const SmtpUsernamesCreateOrUpdateOutput: 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 SmtpUsernamesCreateOrUpdateOutput = typeof SmtpUsernamesCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Create or update an SmtpUsernameResource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 * @param smtpUsername - The name of the SmtpUsernameResource.
 */
export declare const SmtpUsernamesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly smtpUsername: 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 SmtpUsernamesDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly smtpUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SmtpUsernamesDeleteInput = typeof SmtpUsernamesDeleteInput.Type;
export declare const SmtpUsernamesDeleteOutput: Schema.Void;
export type SmtpUsernamesDeleteOutput = typeof SmtpUsernamesDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a single SmtpUsername resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 * @param smtpUsername - The name of the SmtpUsernameResource.
 */
export declare const SmtpUsernamesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly smtpUsername: string;
    readonly subscriptionId: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const SmtpUsernamesGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly smtpUsername: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SmtpUsernamesGetInput = typeof SmtpUsernamesGetInput.Type;
export declare const SmtpUsernamesGetOutput: 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 SmtpUsernamesGetOutput = typeof SmtpUsernamesGetOutput.Type;
/**
 * Get
 *
 * Get a SmtpUsernameResource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 * @param smtpUsername - The name of the SmtpUsernameResource.
 */
export declare const SmtpUsernamesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: string;
    readonly smtpUsername: 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 SmtpUsernamesListInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly communicationServiceName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SmtpUsernamesListInput = typeof SmtpUsernamesListInput.Type;
export declare const SmtpUsernamesListOutput: 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 SmtpUsernamesListOutput = typeof SmtpUsernamesListOutput.Type;
/**
 * Get
 *
 * Get all SmtpUsernameResources for a Communication resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param communicationServiceName - The name of the CommunicationService resource.
 */
export declare const SmtpUsernamesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly communicationServiceName: string;
    readonly resourceGroupName: 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 SuppressionListAddressesCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly addressId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListAddressesCreateOrUpdateInput = typeof SuppressionListAddressesCreateOrUpdateInput.Type;
export declare const SuppressionListAddressesCreateOrUpdateOutput: 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 SuppressionListAddressesCreateOrUpdateOutput = typeof SuppressionListAddressesCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Create or update a SuppressionListAddress.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 * @param addressId - The id of the address in a suppression list.
 */
export declare const SuppressionListAddressesCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly addressId: string;
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: 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 SuppressionListAddressesDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly addressId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListAddressesDeleteInput = typeof SuppressionListAddressesDeleteInput.Type;
export declare const SuppressionListAddressesDeleteOutput: Schema.Void;
export type SuppressionListAddressesDeleteOutput = typeof SuppressionListAddressesDeleteOutput.Type;
/**
 * Delete
 *
 * Operation to delete a single address from a suppression list.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 * @param addressId - The id of the address in a suppression list.
 */
export declare const SuppressionListAddressesDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly addressId: string;
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const SuppressionListAddressesGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly addressId: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListAddressesGetInput = typeof SuppressionListAddressesGetInput.Type;
export declare const SuppressionListAddressesGetOutput: 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 SuppressionListAddressesGetOutput = typeof SuppressionListAddressesGetOutput.Type;
/**
 * Get
 *
 * Get a SuppressionListAddress.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 * @param addressId - The id of the address in a suppression list.
 */
export declare const SuppressionListAddressesGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly addressId: string;
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: 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 SuppressionListAddressesListInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListAddressesListInput = typeof SuppressionListAddressesListInput.Type;
export declare const SuppressionListAddressesListOutput: 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 SuppressionListAddressesListOutput = typeof SuppressionListAddressesListOutput.Type;
/**
 * Get
 *
 * Get all the addresses in a suppression list.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 */
export declare const SuppressionListAddressesList: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: 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 SuppressionListsCreateOrUpdateInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListsCreateOrUpdateInput = typeof SuppressionListsCreateOrUpdateInput.Type;
export declare const SuppressionListsCreateOrUpdateOutput: 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 SuppressionListsCreateOrUpdateOutput = typeof SuppressionListsCreateOrUpdateOutput.Type;
/**
 * Create Or Update
 *
 * Add a new SuppressionList resource under the parent Domains resource or update an existing SuppressionList resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 */
export declare const SuppressionListsCreateOrUpdate: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: 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 SuppressionListsDeleteInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListsDeleteInput = typeof SuppressionListsDeleteInput.Type;
export declare const SuppressionListsDeleteOutput: Schema.Void;
export type SuppressionListsDeleteOutput = typeof SuppressionListsDeleteOutput.Type;
/**
 * Delete
 *
 * Delete a SuppressionList.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 */
export declare const SuppressionListsDelete: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: string;
}, void, never, import("../credentials.ts").Credentials>;
export declare const SuppressionListsGetInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly suppressionListName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListsGetInput = typeof SuppressionListsGetInput.Type;
export declare const SuppressionListsGetOutput: 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 SuppressionListsGetOutput = typeof SuppressionListsGetOutput.Type;
/**
 * Get
 *
 * Get a SuppressionList resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 * @param suppressionListName - The name of the suppression list.
 */
export declare const SuppressionListsGet: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: string;
    readonly subscriptionId: string;
    readonly suppressionListName: 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 SuppressionListsListByDomainInput: Schema.Struct<{
    readonly subscriptionId: Schema.String;
    readonly resourceGroupName: Schema.String;
    readonly emailServiceName: Schema.String;
    readonly domainName: Schema.String;
    readonly "api-version": Schema.String;
}>;
export type SuppressionListsListByDomainInput = typeof SuppressionListsListByDomainInput.Type;
export declare const SuppressionListsListByDomainOutput: 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 SuppressionListsListByDomainOutput = typeof SuppressionListsListByDomainOutput.Type;
/**
 * List
 *
 * List all suppression lists for a domains resource.
 *
 * @param api-version - The API version to use for this operation.
 * @param subscriptionId - The ID of the target subscription. The value must be an UUID.
 * @param resourceGroupName - The name of the resource group. The name is case insensitive.
 * @param emailServiceName - The name of the EmailService resource.
 * @param domainName - The name of the Domains resource.
 */
export declare const SuppressionListsListByDomain: import("@distilled.cloud/core/client").OperationMethod<{
    readonly "api-version": string;
    readonly domainName: string;
    readonly emailServiceName: string;
    readonly resourceGroupName: 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>;
//# sourceMappingURL=communication.d.ts.map