# Copyright (c) CloudZero - ALL RIGHTS RESERVED - PROPRIETARY AND CONFIDENTIAL
# Unauthorized copying of this file and/or project, via any medium is strictly prohibited.
# Direct all questions to legal@cloudzero.com

"""
Package that contains functions for dealing with CloudZero Resource Name (CZRN) identifiers.
CZRNs are used to unambiguously and uniquely identify any resource from any cloud provider, and even covers cases
where a resource might be observed from the Internet, and resources which may not have explicit existence
in a cloud environment.
"""

from czid.czrn.create import create_from_arn, create_from_billing_lineitem, create_from_components  # noqa: F401
from czid.czrn.exceptions import ResourceS3KeyError  # noqa: F401
from czid.czrn.extract import (  # noqa: F401
    extract_account_id,
    extract_all_components,
    extract_cloud_local_id,
    extract_region,
    extract_resource_type,
    extract_service_type,
    fast_extract_account_id,
    fast_extract_cloud_local_id,
    fast_extract_components,
    fast_extract_region,
    fast_extract_resource_type,
    fast_extract_service_type,
)
from czid.czrn.validate import is_valid  # noqa: F401
