# coding=utf-8
# *** WARNING: this file was generated by pulumi-language-python. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins as _builtins
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

import types

__config__ = pulumi.Config('f5bigip')


class _ExportableConfig(types.ModuleType):
    @_builtins.property
    def address(self) -> Optional[str]:
        """
        Domain name/IP of the BigIP
        """
        return __config__.get('address')

    @_builtins.property
    def api_retries(self) -> Optional[int]:
        """
        Amount of times to retry AS3 API requests. Default: 10.
        """
        return __config__.get_int('apiRetries')

    @_builtins.property
    def api_timeout(self) -> Optional[int]:
        """
        A timeout for AS3 requests, represented as a number of seconds. Default: 60
        """
        return __config__.get_int('apiTimeout')

    @_builtins.property
    def login_ref(self) -> Optional[str]:
        """
        Login reference for token authentication (see BIG-IP REST docs for details)
        """
        return __config__.get('loginRef')

    @_builtins.property
    def password(self) -> Optional[str]:
        """
        The user's password. Leave empty if using token_value
        """
        return __config__.get('password')

    @_builtins.property
    def port(self) -> Optional[str]:
        """
        Management Port to connect to Bigip
        """
        return __config__.get('port')

    @_builtins.property
    def teem_disable(self) -> Optional[bool]:
        """
        If this flag set to true,sending telemetry data to TEEM will be disabled
        """
        return __config__.get_bool('teemDisable')

    @_builtins.property
    def token_auth(self) -> Optional[bool]:
        """
        Enable to use token authentication. Can be set via the BIGIP_TOKEN_AUTH environment variable
        """
        return __config__.get_bool('tokenAuth')

    @_builtins.property
    def token_timeout(self) -> Optional[int]:
        """
        A lifespan to request for the AS3 auth token, represented as a number of seconds. Default: 1200
        """
        return __config__.get_int('tokenTimeout')

    @_builtins.property
    def token_value(self) -> Optional[str]:
        """
        A token generated outside the provider, in place of password
        """
        return __config__.get('tokenValue')

    @_builtins.property
    def trusted_cert_path(self) -> Optional[str]:
        """
        Valid Trusted Certificate path
        """
        return __config__.get('trustedCertPath')

    @_builtins.property
    def username(self) -> Optional[str]:
        """
        Username with API access to the BigIP
        """
        return __config__.get('username')

    @_builtins.property
    def validate_certs_disable(self) -> Optional[bool]:
        """
        If set to true, Disables TLS certificate check on BIG-IP. Default : True
        """
        return __config__.get_bool('validateCertsDisable')

