# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import copy
import warnings
import sys
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
if sys.version_info >= (3, 11):
    from typing import NotRequired, TypedDict, TypeAlias
else:
    from typing_extensions import NotRequired, TypedDict, TypeAlias
from .. import _utilities

__all__ = [
    'GetAccountAccountResult',
    'GetPluginsPluginResult',
]

@pulumi.output_type
class GetAccountAccountResult(dict):
    def __init__(__self__, *,
                 contacts: Sequence[str],
                 created_at: str,
                 status: str):
        """
        :param Sequence[str] contacts: An array of contact email addresses.
        :param str created_at: The timestamp of the account creation.
        :param str status: The status of the account. Can be one of `valid`, `deactivated` or `revoked`.
        """
        pulumi.set(__self__, "contacts", contacts)
        pulumi.set(__self__, "created_at", created_at)
        pulumi.set(__self__, "status", status)

    @property
    @pulumi.getter
    def contacts(self) -> Sequence[str]:
        """
        An array of contact email addresses.
        """
        return pulumi.get(self, "contacts")

    @property
    @pulumi.getter(name="createdAt")
    def created_at(self) -> str:
        """
        The timestamp of the account creation.
        """
        return pulumi.get(self, "created_at")

    @property
    @pulumi.getter
    def status(self) -> str:
        """
        The status of the account. Can be one of `valid`, `deactivated` or `revoked`.
        """
        return pulumi.get(self, "status")


@pulumi.output_type
class GetPluginsPluginResult(dict):
    def __init__(__self__, *,
                 api: str,
                 data: Mapping[str, str],
                 digest: str,
                 plugin: str,
                 type: str,
                 validation_delay: int):
        """
        :param str api: API plugin name.
        :param Mapping[str, str] data: DNS plugin data.
        :param str digest: Prevent changes if current configuration file has a different digest. This can be used to prevent concurrent modifications.
        :param str plugin: ACME Plugin ID name.
        :param str type: ACME challenge type (dns, standalone).
        :param int validation_delay: Extra delay in seconds to wait before requesting validation. Allows to cope with a long TTL of DNS records (0 - 172800).
        """
        pulumi.set(__self__, "api", api)
        pulumi.set(__self__, "data", data)
        pulumi.set(__self__, "digest", digest)
        pulumi.set(__self__, "plugin", plugin)
        pulumi.set(__self__, "type", type)
        pulumi.set(__self__, "validation_delay", validation_delay)

    @property
    @pulumi.getter
    def api(self) -> str:
        """
        API plugin name.
        """
        return pulumi.get(self, "api")

    @property
    @pulumi.getter
    def data(self) -> Mapping[str, str]:
        """
        DNS plugin data.
        """
        return pulumi.get(self, "data")

    @property
    @pulumi.getter
    def digest(self) -> str:
        """
        Prevent changes if current configuration file has a different digest. This can be used to prevent concurrent modifications.
        """
        return pulumi.get(self, "digest")

    @property
    @pulumi.getter
    def plugin(self) -> str:
        """
        ACME Plugin ID name.
        """
        return pulumi.get(self, "plugin")

    @property
    @pulumi.getter
    def type(self) -> str:
        """
        ACME challenge type (dns, standalone).
        """
        return pulumi.get(self, "type")

    @property
    @pulumi.getter(name="validationDelay")
    def validation_delay(self) -> int:
        """
        Extra delay in seconds to wait before requesting validation. Allows to cope with a long TTL of DNS records (0 - 172800).
        """
        return pulumi.get(self, "validation_delay")


