# 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

__all__ = [
    'IpRangeLink',
    'IpRangeTag',
    'NetworkConstraint',
    'NetworkLink',
    'NetworkTag',
    'ProfileLink',
    'ProfileTag',
    'GetDomainLinkResult',
    'GetDomainTagResult',
    'GetNetworkConstraintResult',
    'GetNetworkLinkResult',
    'GetNetworkTagResult',
    'GetProfileLinkResult',
    'GetProfileTagResult',
]

@pulumi.output_type
class IpRangeLink(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class IpRangeTag(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


@pulumi.output_type
class NetworkConstraint(dict):
    def __init__(__self__, *,
                 expression: str,
                 mandatory: bool):
        pulumi.set(__self__, "expression", expression)
        pulumi.set(__self__, "mandatory", mandatory)

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

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


@pulumi.output_type
class NetworkLink(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class NetworkTag(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


@pulumi.output_type
class ProfileLink(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class ProfileTag(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


@pulumi.output_type
class GetDomainLinkResult(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class GetDomainTagResult(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


@pulumi.output_type
class GetNetworkConstraintResult(dict):
    def __init__(__self__, *,
                 expression: str,
                 mandatory: bool):
        pulumi.set(__self__, "expression", expression)
        pulumi.set(__self__, "mandatory", mandatory)

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

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


@pulumi.output_type
class GetNetworkLinkResult(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class GetNetworkTagResult(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


@pulumi.output_type
class GetProfileLinkResult(dict):
    def __init__(__self__, *,
                 rel: str,
                 href: Optional[str] = None,
                 hrefs: Optional[Sequence[str]] = None):
        pulumi.set(__self__, "rel", rel)
        if href is not None:
            pulumi.set(__self__, "href", href)
        if hrefs is not None:
            pulumi.set(__self__, "hrefs", hrefs)

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

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

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


@pulumi.output_type
class GetProfileTagResult(dict):
    def __init__(__self__, *,
                 key: str,
                 value: str):
        pulumi.set(__self__, "key", key)
        pulumi.set(__self__, "value", value)

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

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


