import { AdditionalSettings } from './additionalSettings';
export declare class UpdateMerchantWebhookRequest {
    /**
    * Indicates if expired SSL certificates are accepted. Default value: **false**.
    */
    'acceptsExpiredCertificate'?: boolean;
    /**
    * Indicates if self-signed SSL certificates are accepted. Default value: **false**.
    */
    'acceptsSelfSignedCertificate'?: boolean;
    /**
    * Indicates if untrusted SSL certificates are accepted. Default value: **false**.
    */
    'acceptsUntrustedRootCertificate'?: boolean;
    /**
    * Indicates if the webhook configuration is active. The field must be **true** for us to send webhooks about events related an account.
    */
    'active'?: boolean;
    'additionalSettings'?: AdditionalSettings | null;
    /**
    * Format or protocol for receiving webhooks. Possible values: * **soap** * **http** * **json**
    */
    'communicationFormat'?: UpdateMerchantWebhookRequest.CommunicationFormatEnum;
    /**
    * Your description for this webhook configuration.
    */
    'description'?: string;
    /**
    * SSL version to access the public webhook URL specified in the `url` field. Possible values: * **TLSv1.3** * **TLSv1.2** * **HTTP** - Only allowed on Test environment.  If not specified, the webhook will use `sslVersion`: **TLSv1.2**.
    */
    'encryptionProtocol'?: UpdateMerchantWebhookRequest.EncryptionProtocolEnum;
    /**
    * Network type for Terminal API notification webhooks. Possible values: * **public** * **local**  Default Value: **public**.
    */
    'networkType'?: UpdateMerchantWebhookRequest.NetworkTypeEnum;
    /**
    * Password to access the webhook URL.
    */
    'password'?: string;
    /**
    * Indicates if the SOAP action header needs to be populated. Default value: **false**.  Only applies if `communicationFormat`: **soap**.
    */
    'populateSoapActionHeader'?: boolean;
    /**
    * Public URL where webhooks will be sent, for example **https://www.domain.com/webhook-endpoint**.
    */
    'url'?: string;
    /**
    * Username to access the webhook URL.
    */
    'username'?: string;
    static discriminator: string | undefined;
    static attributeTypeMap: Array<{
        name: string;
        baseName: string;
        type: string;
    }>;
    static getAttributeTypeMap(): {
        name: string;
        baseName: string;
        type: string;
    }[];
}
export declare namespace UpdateMerchantWebhookRequest {
    enum CommunicationFormatEnum {
        Http = "http",
        Json = "json",
        Soap = "soap"
    }
    enum EncryptionProtocolEnum {
        Http = "HTTP",
        Tlsv12 = "TLSv1.2",
        Tlsv13 = "TLSv1.3"
    }
    enum NetworkTypeEnum {
        Local = "local",
        Public = "public"
    }
}
