# Path: clouddq/classes/rule_type.py
# class RuleType(str, Enum):
#     """ """
# 
#     CUSTOM_SQL_STATEMENT = "CUSTOM_SQL_STATEMENT"
#     CUSTOM_SQL_EXPR = "CUSTOM_SQL_EXPR"
#     NOT_NULL = "NOT_NULL"
#     REGEX = "REGEX"
#     NOT_BLANK = "NOT_BLANK"
# 
#     def to_sql(self: RuleType, params: dict | None) -> Template:
#         if self == RuleType.CUSTOM_SQL_EXPR:
#             return to_sql_custom_sql_expr(params)
#         elif self == RuleType.CUSTOM_SQL_STATEMENT:
#             return to_sql_custom_sql_statement(params)
#         elif self == RuleType.NOT_NULL:
#             return NOT_NULL_SQL
#         elif self == RuleType.REGEX:
#             return to_sql_regex(params)
#         elif self == RuleType.NOT_BLANK:
#             return NOT_BLANK_SQL
#         else:
#             raise NotImplementedError(f"Rule Type: {self} not implemented.")


from dataclasses import dataclass
from clouddq.classes.rule_type import RuleType
# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

"""todo: add classes docstring."""
from __future__ import annotations




@dataclass
class DqRule:
    """ """

    rule_id: str

# Path: clouddq/classes/rule_type.py
# class RuleType(str, Enum):
#     """ """
# 
#     CUSTOM_SQL_STATEMENT = "CUSTOM_SQL_STATEMENT"
#     CUSTOM_SQL_EXPR = "CUSTOM_SQL_EXPR"
#     NOT_NULL = "NOT_NULL"
#     REGEX = "REGEX"
#     NOT_BLANK = "NOT_BLANK"
# 
#     def to_sql(self: RuleType, params: dict | None) -> Template:
#         if self == RuleType.CUSTOM_SQL_EXPR:
#             return to_sql_custom_sql_expr(params)
#         elif self == RuleType.CUSTOM_SQL_STATEMENT:
#             return to_sql_custom_sql_statement(params)
#         elif self == RuleType.NOT_NULL:
#             return NOT_NULL_SQL
#         elif self == RuleType.REGEX:
#             return to_sql_regex(params)
#         elif self == RuleType.NOT_BLANK:
#             return NOT_BLANK_SQL
#         else:
#             raise NotImplementedError(f"Rule Type: {self} not implemented.")


# Path: clouddq/classes/dq_rule.py
from dataclasses import dataclass
from clouddq.classes.rule_type import RuleType

# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

"""todo: add classes docstring."""
from __future__ import annotations




@dataclass
class DqRule:
    """ """

    rule_id: str

    rule_type: RuleType