# Auto generated by 'inv collect-airflow'
from airfly._vendor.airflow.models.baseoperator import BaseOperator
from airfly._vendor.airflow.providers.amazon.aws.operators.base_aws import (
    AwsBaseOperator,
)


class GlueJobOperator(BaseOperator):
    job_name: "str"
    job_desc: "str"
    script_location: "str | None"
    concurrent_run_limit: "int | None"
    script_args: "dict | None"
    retry_limit: "int"
    num_of_dpus: "int | float | None"
    aws_conn_id: "str | None"
    region_name: "str | None"
    s3_bucket: "str | None"
    iam_role_name: "str | None"
    iam_role_arn: "str | None"
    create_job_kwargs: "dict | None"
    run_job_kwargs: "dict | None"
    wait_for_completion: "bool"
    deferrable: "bool"
    verbose: "bool"
    replace_script_file: "bool"
    update_config: "bool"
    job_poll_interval: "int | float"
    stop_job_run_on_kill: "bool"


class GlueDataQualityOperator(AwsBaseOperator):
    name: "str"
    ruleset: "str"
    description: "str"
    update_rule_set: "bool"
    data_quality_ruleset_kwargs: "dict | None"
    aws_conn_id: "str | None"


class GlueDataQualityRuleSetEvaluationRunOperator(AwsBaseOperator):
    datasource: "dict"
    role: "str"
    rule_set_names: "list[str]"
    number_of_workers: "int"
    timeout: "int"
    verify_result_status: "bool"
    show_results: "bool"
    rule_set_evaluation_run_kwargs: "dict[str, Any] | None"
    wait_for_completion: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"
    deferrable: "bool"
    aws_conn_id: "str | None"


class GlueDataQualityRuleRecommendationRunOperator(AwsBaseOperator):
    datasource: "dict"
    role: "str"
    number_of_workers: "int"
    timeout: "int"
    show_results: "bool"
    recommendation_run_kwargs: "dict[str, Any] | None"
    wait_for_completion: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"
    deferrable: "bool"
    aws_conn_id: "str | None"
