# Auto generated by 'inv collect-airflow'
from airfly._vendor.airflow.models.baseoperator import BaseOperator


class RdsBaseOperator(BaseOperator):
    aws_conn_id: "str | None"
    region_name: "str | None"
    hook_params: "dict | None"


class RdsCreateDbSnapshotOperator(RdsBaseOperator):
    db_type: "str"
    db_identifier: "str"
    db_snapshot_identifier: "str"
    tags: "Sequence[TagTypeDef] | dict | None"
    wait_for_completion: "bool"


class RdsCopyDbSnapshotOperator(RdsBaseOperator):
    db_type: "str"
    source_db_snapshot_identifier: "str"
    target_db_snapshot_identifier: "str"
    kms_key_id: "str"
    tags: "Sequence[TagTypeDef] | dict | None"
    copy_tags: "bool"
    pre_signed_url: "str"
    option_group_name: "str"
    target_custom_availability_zone: "str"
    source_region: "str"
    wait_for_completion: "bool"


class RdsDeleteDbSnapshotOperator(RdsBaseOperator):
    db_type: "str"
    db_snapshot_identifier: "str"
    wait_for_completion: "bool"


class RdsStartExportTaskOperator(RdsBaseOperator):
    export_task_identifier: "str"
    source_arn: "str"
    s3_bucket_name: "str"
    iam_role_arn: "str"
    kms_key_id: "str"
    s3_prefix: "str"
    export_only: "list[str] | None"
    wait_for_completion: "bool"
    waiter_interval: "int"
    waiter_max_attempts: "int"


class RdsCancelExportTaskOperator(RdsBaseOperator):
    export_task_identifier: "str"
    wait_for_completion: "bool"
    check_interval: "int"
    max_attempts: "int"


class RdsCreateEventSubscriptionOperator(RdsBaseOperator):
    subscription_name: "str"
    sns_topic_arn: "str"
    source_type: "str"
    event_categories: "Sequence[str] | None"
    source_ids: "Sequence[str] | None"
    enabled: "bool"
    tags: "Sequence[TagTypeDef] | dict | None"
    wait_for_completion: "bool"


class RdsDeleteEventSubscriptionOperator(RdsBaseOperator):
    subscription_name: "str"


class RdsCreateDbInstanceOperator(RdsBaseOperator):
    db_instance_identifier: "str"
    db_instance_class: "str"
    engine: "str"
    rds_kwargs: "dict | None"
    wait_for_completion: "bool"
    deferrable: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"


class RdsDeleteDbInstanceOperator(RdsBaseOperator):
    db_instance_identifier: "str"
    rds_kwargs: "dict | None"
    wait_for_completion: "bool"
    deferrable: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"


class RdsStartDbOperator(RdsBaseOperator):
    db_identifier: "str"
    db_type: "RdsDbType | str"
    wait_for_completion: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"
    deferrable: "bool"


class RdsStopDbOperator(RdsBaseOperator):
    db_identifier: "str"
    db_type: "RdsDbType | str"
    db_snapshot_identifier: "str | None"
    wait_for_completion: "bool"
    waiter_delay: "int"
    waiter_max_attempts: "int"
    deferrable: "bool"
