# 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 pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from . import _utilities
from . import outputs
from ._inputs import *

__all__ = [
    'GetAuthServersClaimsResult',
    'AwaitableGetAuthServersClaimsResult',
    'get_auth_servers_claims',
    'get_auth_servers_claims_output',
]

@pulumi.output_type
class GetAuthServersClaimsResult:
    """
    A collection of values returned by getAuthServersClaims.
    """
    def __init__(__self__, attribute_transformations=None, auth_servers_id=None, default_values=None, filters=None, id=None, label=None, provisioned_entitlements=None, skip_if_blank=None, user_attribute_macros=None, user_attribute_mappings=None, values=None):
        if attribute_transformations and not isinstance(attribute_transformations, str):
            raise TypeError("Expected argument 'attribute_transformations' to be a str")
        pulumi.set(__self__, "attribute_transformations", attribute_transformations)
        if auth_servers_id and not isinstance(auth_servers_id, str):
            raise TypeError("Expected argument 'auth_servers_id' to be a str")
        pulumi.set(__self__, "auth_servers_id", auth_servers_id)
        if default_values and not isinstance(default_values, str):
            raise TypeError("Expected argument 'default_values' to be a str")
        pulumi.set(__self__, "default_values", default_values)
        if filters and not isinstance(filters, list):
            raise TypeError("Expected argument 'filters' to be a list")
        pulumi.set(__self__, "filters", filters)
        if id and not isinstance(id, str):
            raise TypeError("Expected argument 'id' to be a str")
        pulumi.set(__self__, "id", id)
        if label and not isinstance(label, str):
            raise TypeError("Expected argument 'label' to be a str")
        pulumi.set(__self__, "label", label)
        if provisioned_entitlements and not isinstance(provisioned_entitlements, bool):
            raise TypeError("Expected argument 'provisioned_entitlements' to be a bool")
        pulumi.set(__self__, "provisioned_entitlements", provisioned_entitlements)
        if skip_if_blank and not isinstance(skip_if_blank, bool):
            raise TypeError("Expected argument 'skip_if_blank' to be a bool")
        pulumi.set(__self__, "skip_if_blank", skip_if_blank)
        if user_attribute_macros and not isinstance(user_attribute_macros, str):
            raise TypeError("Expected argument 'user_attribute_macros' to be a str")
        pulumi.set(__self__, "user_attribute_macros", user_attribute_macros)
        if user_attribute_mappings and not isinstance(user_attribute_mappings, str):
            raise TypeError("Expected argument 'user_attribute_mappings' to be a str")
        pulumi.set(__self__, "user_attribute_mappings", user_attribute_mappings)
        if values and not isinstance(values, list):
            raise TypeError("Expected argument 'values' to be a list")
        pulumi.set(__self__, "values", values)

    @property
    @pulumi.getter(name="attributeTransformations")
    def attribute_transformations(self) -> str:
        return pulumi.get(self, "attribute_transformations")

    @property
    @pulumi.getter(name="authServersId")
    def auth_servers_id(self) -> str:
        return pulumi.get(self, "auth_servers_id")

    @property
    @pulumi.getter(name="defaultValues")
    def default_values(self) -> str:
        return pulumi.get(self, "default_values")

    @property
    @pulumi.getter
    def filters(self) -> Optional[Sequence['outputs.GetAuthServersClaimsFilterResult']]:
        return pulumi.get(self, "filters")

    @property
    @pulumi.getter
    def id(self) -> str:
        """
        The provider-assigned unique ID for this managed resource.
        """
        return pulumi.get(self, "id")

    @property
    @pulumi.getter
    def label(self) -> str:
        return pulumi.get(self, "label")

    @property
    @pulumi.getter(name="provisionedEntitlements")
    def provisioned_entitlements(self) -> bool:
        return pulumi.get(self, "provisioned_entitlements")

    @property
    @pulumi.getter(name="skipIfBlank")
    def skip_if_blank(self) -> bool:
        return pulumi.get(self, "skip_if_blank")

    @property
    @pulumi.getter(name="userAttributeMacros")
    def user_attribute_macros(self) -> str:
        return pulumi.get(self, "user_attribute_macros")

    @property
    @pulumi.getter(name="userAttributeMappings")
    def user_attribute_mappings(self) -> str:
        return pulumi.get(self, "user_attribute_mappings")

    @property
    @pulumi.getter
    def values(self) -> Sequence[str]:
        return pulumi.get(self, "values")


class AwaitableGetAuthServersClaimsResult(GetAuthServersClaimsResult):
    # pylint: disable=using-constant-test
    def __await__(self):
        if False:
            yield self
        return GetAuthServersClaimsResult(
            attribute_transformations=self.attribute_transformations,
            auth_servers_id=self.auth_servers_id,
            default_values=self.default_values,
            filters=self.filters,
            id=self.id,
            label=self.label,
            provisioned_entitlements=self.provisioned_entitlements,
            skip_if_blank=self.skip_if_blank,
            user_attribute_macros=self.user_attribute_macros,
            user_attribute_mappings=self.user_attribute_mappings,
            values=self.values)


def get_auth_servers_claims(attribute_transformations: Optional[str] = None,
                            auth_servers_id: Optional[str] = None,
                            default_values: Optional[str] = None,
                            filters: Optional[Sequence[pulumi.InputType['GetAuthServersClaimsFilterArgs']]] = None,
                            label: Optional[str] = None,
                            provisioned_entitlements: Optional[bool] = None,
                            skip_if_blank: Optional[bool] = None,
                            user_attribute_macros: Optional[str] = None,
                            user_attribute_mappings: Optional[str] = None,
                            values: Optional[Sequence[str]] = None,
                            opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetAuthServersClaimsResult:
    """
    Use this data source to access information about an existing resource.
    """
    __args__ = dict()
    __args__['attributeTransformations'] = attribute_transformations
    __args__['authServersId'] = auth_servers_id
    __args__['defaultValues'] = default_values
    __args__['filters'] = filters
    __args__['label'] = label
    __args__['provisionedEntitlements'] = provisioned_entitlements
    __args__['skipIfBlank'] = skip_if_blank
    __args__['userAttributeMacros'] = user_attribute_macros
    __args__['userAttributeMappings'] = user_attribute_mappings
    __args__['values'] = values
    opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
    __ret__ = pulumi.runtime.invoke('onelogin:index/getAuthServersClaims:getAuthServersClaims', __args__, opts=opts, typ=GetAuthServersClaimsResult).value

    return AwaitableGetAuthServersClaimsResult(
        attribute_transformations=pulumi.get(__ret__, 'attribute_transformations'),
        auth_servers_id=pulumi.get(__ret__, 'auth_servers_id'),
        default_values=pulumi.get(__ret__, 'default_values'),
        filters=pulumi.get(__ret__, 'filters'),
        id=pulumi.get(__ret__, 'id'),
        label=pulumi.get(__ret__, 'label'),
        provisioned_entitlements=pulumi.get(__ret__, 'provisioned_entitlements'),
        skip_if_blank=pulumi.get(__ret__, 'skip_if_blank'),
        user_attribute_macros=pulumi.get(__ret__, 'user_attribute_macros'),
        user_attribute_mappings=pulumi.get(__ret__, 'user_attribute_mappings'),
        values=pulumi.get(__ret__, 'values'))


@_utilities.lift_output_func(get_auth_servers_claims)
def get_auth_servers_claims_output(attribute_transformations: Optional[pulumi.Input[Optional[str]]] = None,
                                   auth_servers_id: Optional[pulumi.Input[str]] = None,
                                   default_values: Optional[pulumi.Input[Optional[str]]] = None,
                                   filters: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetAuthServersClaimsFilterArgs']]]]] = None,
                                   label: Optional[pulumi.Input[Optional[str]]] = None,
                                   provisioned_entitlements: Optional[pulumi.Input[Optional[bool]]] = None,
                                   skip_if_blank: Optional[pulumi.Input[Optional[bool]]] = None,
                                   user_attribute_macros: Optional[pulumi.Input[Optional[str]]] = None,
                                   user_attribute_mappings: Optional[pulumi.Input[Optional[str]]] = None,
                                   values: Optional[pulumi.Input[Optional[Sequence[str]]]] = None,
                                   opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetAuthServersClaimsResult]:
    """
    Use this data source to access information about an existing resource.
    """
    ...
