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

from enum import Enum

__all__ = [
    'CalculationWindowTypes',
    'CardinalityTypes',
    'CompletionOperationTypes',
    'ConnectorTypes',
    'EntityType',
    'EntityTypes',
    'ErrorManagementTypes',
    'FormatTypes',
    'FrequencyTypes',
    'InstanceOperationType',
    'KpiFunctions',
    'LinkTypes',
    'RoleTypes',
]


class CalculationWindowTypes(str, Enum):
    """
    The calculation window.
    """
    LIFETIME = "Lifetime"
    HOUR = "Hour"
    DAY = "Day"
    WEEK = "Week"
    MONTH = "Month"


class CardinalityTypes(str, Enum):
    """
    The Relationship Cardinality.
    """
    ONE_TO_ONE = "OneToOne"
    ONE_TO_MANY = "OneToMany"
    MANY_TO_MANY = "ManyToMany"


class CompletionOperationTypes(str, Enum):
    """
    The type of completion operation.
    """
    DO_NOTHING = "DoNothing"
    DELETE_FILE = "DeleteFile"
    MOVE_FILE = "MoveFile"


class ConnectorTypes(str, Enum):
    """
    Type of connector.
    """
    NONE = "None"
    CRM = "CRM"
    AZURE_BLOB = "AzureBlob"
    SALESFORCE = "Salesforce"
    EXCHANGE_ONLINE = "ExchangeOnline"
    OUTBOUND = "Outbound"


class EntityType(str, Enum):
    """
    Type of target entity.
    """
    NONE = "None"
    PROFILE = "Profile"
    INTERACTION = "Interaction"
    RELATIONSHIP = "Relationship"


class EntityTypes(str, Enum):
    """
    Type of entity.
    """
    NONE = "None"
    PROFILE = "Profile"
    INTERACTION = "Interaction"
    RELATIONSHIP = "Relationship"


class ErrorManagementTypes(str, Enum):
    """
    The type of error management to use for the mapping.
    """
    REJECT_AND_CONTINUE = "RejectAndContinue"
    STOP_IMPORT = "StopImport"
    REJECT_UNTIL_LIMIT = "RejectUntilLimit"


class FormatTypes(str, Enum):
    """
    The type mapping format.
    """
    TEXT_FORMAT = "TextFormat"


class FrequencyTypes(str, Enum):
    """
    The frequency to update.
    """
    MINUTE = "Minute"
    HOUR = "Hour"
    DAY = "Day"
    WEEK = "Week"
    MONTH = "Month"


class InstanceOperationType(str, Enum):
    """
    Determines whether this link is supposed to create or delete instances if Link is NOT Reference Only.
    """
    UPSERT = "Upsert"
    DELETE = "Delete"


class KpiFunctions(str, Enum):
    """
    The computation function for the KPI.
    """
    SUM = "Sum"
    AVG = "Avg"
    MIN = "Min"
    MAX = "Max"
    LAST = "Last"
    COUNT = "Count"
    NONE = "None"
    COUNT_DISTINCT = "CountDistinct"


class LinkTypes(str, Enum):
    """
    Link type.
    """
    UPDATE_ALWAYS = "UpdateAlways"
    COPY_IF_NULL = "CopyIfNull"


class RoleTypes(str, Enum):
    """
    Type of roles.
    """
    ADMIN = "Admin"
    READER = "Reader"
    MANAGE_ADMIN = "ManageAdmin"
    MANAGE_READER = "ManageReader"
    DATA_ADMIN = "DataAdmin"
    DATA_READER = "DataReader"
