import * as msRest from "@azure/ms-rest-js";
import * as Models from "../models";
import { AutomationClientContext } from "../automationClientContext";
/** Class representing a CertificateOperations. */
export declare class CertificateOperations {
    private readonly client;
    /**
     * Create a CertificateOperations.
     * @param {AutomationClientContext} client Reference to the service client.
     */
    constructor(client: AutomationClientContext);
    /**
     * Delete the certificate.
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param [options] The optional parameters
     * @returns Promise<msRest.RestResponse>
     */
    deleteMethod(resourceGroupName: string, automationAccountName: string, certificateName: string, options?: msRest.RequestOptionsBase): Promise<msRest.RestResponse>;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param callback The callback
     */
    deleteMethod(resourceGroupName: string, automationAccountName: string, certificateName: string, callback: msRest.ServiceCallback<void>): void;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param options The optional parameters
     * @param callback The callback
     */
    deleteMethod(resourceGroupName: string, automationAccountName: string, certificateName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<void>): void;
    /**
     * Retrieve the certificate identified by certificate name.
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param [options] The optional parameters
     * @returns Promise<Models.CertificateGetResponse>
     */
    get(resourceGroupName: string, automationAccountName: string, certificateName: string, options?: msRest.RequestOptionsBase): Promise<Models.CertificateGetResponse>;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param callback The callback
     */
    get(resourceGroupName: string, automationAccountName: string, certificateName: string, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The name of certificate.
     * @param options The optional parameters
     * @param callback The callback
     */
    get(resourceGroupName: string, automationAccountName: string, certificateName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * Create a certificate.
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the create or update certificate operation.
     * @param parameters The parameters supplied to the create or update certificate operation.
     * @param [options] The optional parameters
     * @returns Promise<Models.CertificateCreateOrUpdateResponse>
     */
    createOrUpdate(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateCreateOrUpdateParameters, options?: msRest.RequestOptionsBase): Promise<Models.CertificateCreateOrUpdateResponse>;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the create or update certificate operation.
     * @param parameters The parameters supplied to the create or update certificate operation.
     * @param callback The callback
     */
    createOrUpdate(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateCreateOrUpdateParameters, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the create or update certificate operation.
     * @param parameters The parameters supplied to the create or update certificate operation.
     * @param options The optional parameters
     * @param callback The callback
     */
    createOrUpdate(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateCreateOrUpdateParameters, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * Update a certificate.
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the update certificate operation.
     * @param parameters The parameters supplied to the update certificate operation.
     * @param [options] The optional parameters
     * @returns Promise<Models.CertificateUpdateResponse>
     */
    update(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateUpdateParameters, options?: msRest.RequestOptionsBase): Promise<Models.CertificateUpdateResponse>;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the update certificate operation.
     * @param parameters The parameters supplied to the update certificate operation.
     * @param callback The callback
     */
    update(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateUpdateParameters, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param certificateName The parameters supplied to the update certificate operation.
     * @param parameters The parameters supplied to the update certificate operation.
     * @param options The optional parameters
     * @param callback The callback
     */
    update(resourceGroupName: string, automationAccountName: string, certificateName: string, parameters: Models.CertificateUpdateParameters, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.Certificate>): void;
    /**
     * Retrieve a list of certificates.
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param [options] The optional parameters
     * @returns Promise<Models.CertificateListByAutomationAccountResponse>
     */
    listByAutomationAccount(resourceGroupName: string, automationAccountName: string, options?: msRest.RequestOptionsBase): Promise<Models.CertificateListByAutomationAccountResponse>;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param callback The callback
     */
    listByAutomationAccount(resourceGroupName: string, automationAccountName: string, callback: msRest.ServiceCallback<Models.CertificateListResult>): void;
    /**
     * @param resourceGroupName Name of an Azure Resource group.
     * @param automationAccountName The name of the automation account.
     * @param options The optional parameters
     * @param callback The callback
     */
    listByAutomationAccount(resourceGroupName: string, automationAccountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.CertificateListResult>): void;
    /**
     * Retrieve a list of certificates.
     * @param nextPageLink The NextLink from the previous successful call to List operation.
     * @param [options] The optional parameters
     * @returns Promise<Models.CertificateListByAutomationAccountNextResponse>
     */
    listByAutomationAccountNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise<Models.CertificateListByAutomationAccountNextResponse>;
    /**
     * @param nextPageLink The NextLink from the previous successful call to List operation.
     * @param callback The callback
     */
    listByAutomationAccountNext(nextPageLink: string, callback: msRest.ServiceCallback<Models.CertificateListResult>): void;
    /**
     * @param nextPageLink The NextLink from the previous successful call to List operation.
     * @param options The optional parameters
     * @param callback The callback
     */
    listByAutomationAccountNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback<Models.CertificateListResult>): void;
}
//# sourceMappingURL=certificateOperations.d.ts.map