# 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 builtins
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
from . import outputs

import types

__config__ = pulumi.Config('bytepluscc')


class _ExportableConfig(types.ModuleType):
    @property
    def access_key(self) -> Optional[str]:
        """
        The Access Key for Byteplus Provider. It must be provided, but it can also be sourced from the `BYTEPLUS_ACCESS_KEY`
        environment variable
        """
        return __config__.get('accessKey') or _utilities.get_env('BYTEPLUS_ACCESS_KEY')

    @property
    def assume_role(self) -> Optional[str]:
        """
        An `assume_role` block (documented below). Only one `assume_role` block may be in the configuration.
        """
        return __config__.get('assumeRole')

    @property
    def customer_headers(self) -> Optional[str]:
        """
        CUSTOMER HEADERS for Byteplus Provider. The customer_headers field uses commas (,) to separate multiple headers, and
        colons (:) to separate each header key from its corresponding value.
        """
        return __config__.get('customerHeaders') or _utilities.get_env('BYTEPLUS_CUSTOMER_HEADERS')

    @property
    def disable_ssl(self) -> Optional[bool]:
        """
        Disable SSL for Byteplus Provider
        """
        return __config__.get_bool('disableSsl') or _utilities.get_env_bool('BYTEPLUS_DISABLE_SSL')

    @property
    def endpoints(self) -> Optional[str]:
        """
        An `endpoints` block (documented below). Only one `endpoints` block may be in the configuration.
        """
        return __config__.get('endpoints')

    @property
    def proxy_url(self) -> Optional[str]:
        """
        PROXY URL for Byteplus Provider
        """
        return __config__.get('proxyUrl') or _utilities.get_env('BYTEPLUS_PROXY_URL')

    @property
    def region(self) -> Optional[str]:
        """
        The Region for Byteplus Provider. It must be provided, but it can also be sourced from the `BYTEPLUS_REGION` environment
        variable
        """
        return __config__.get('region') or _utilities.get_env('BYTEPLUS_REGION')

    @property
    def secret_key(self) -> Optional[str]:
        """
        he Secret Key for Byteplus Provider. It must be provided, but it can also be sourced from the `BYTEPLUS_SECRET_KEY`
        environment variable
        """
        return __config__.get('secretKey') or _utilities.get_env('BYTEPLUS_SECRET_KEY')

