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


class RedshiftCreateClusterOperator(BaseOperator):
    cluster_identifier: "str"
    node_type: "str"
    master_username: "str"
    master_user_password: "str"
    cluster_type: "str"
    db_name: "str"
    number_of_nodes: "int"
    cluster_security_groups: "list[str] | None"
    vpc_security_group_ids: "list[str] | None"
    cluster_subnet_group_name: "str | None"
    availability_zone: "str | None"
    preferred_maintenance_window: "str | None"
    cluster_parameter_group_name: "str | None"
    automated_snapshot_retention_period: "int"
    manual_snapshot_retention_period: "int | None"
    port: "int"
    cluster_version: "str"
    allow_version_upgrade: "bool"
    publicly_accessible: "bool"
    encrypted: "bool"
    hsm_client_certificate_identifier: "str | None"
    hsm_configuration_identifier: "str | None"
    elastic_ip: "str | None"
    tags: "list[Any] | None"
    kms_key_id: "str | None"
    enhanced_vpc_routing: "bool"
    additional_info: "str | None"
    iam_roles: "list[str] | None"
    maintenance_track_name: "str | None"
    snapshot_schedule_identifier: "str | None"
    availability_zone_relocation: "bool | None"
    aqua_configuration_status: "str | None"
    default_iam_role_arn: "str | None"
    aws_conn_id: "str | None"
    wait_for_completion: "bool"
    max_attempt: "int"
    poll_interval: "int"
    deferrable: "bool"


class RedshiftCreateClusterSnapshotOperator(BaseOperator):
    snapshot_identifier: "str"
    cluster_identifier: "str"
    retention_period: "int"
    tags: "list[Any] | None"
    wait_for_completion: "bool"
    poll_interval: "int"
    max_attempt: "int"
    aws_conn_id: "str | None"
    deferrable: "bool"


class RedshiftDeleteClusterSnapshotOperator(BaseOperator):
    snapshot_identifier: "str"
    cluster_identifier: "str"
    wait_for_completion: "bool"
    aws_conn_id: "str | None"
    poll_interval: "int"


class RedshiftResumeClusterOperator(BaseOperator):
    cluster_identifier: "str"
    aws_conn_id: "str | None"
    wait_for_completion: "bool"
    deferrable: "bool"
    poll_interval: "int"
    max_attempts: "int"


class RedshiftPauseClusterOperator(BaseOperator):
    cluster_identifier: "str"
    aws_conn_id: "str | None"
    wait_for_completion: "bool"
    deferrable: "bool"
    poll_interval: "int"
    max_attempts: "int"


class RedshiftDeleteClusterOperator(BaseOperator):
    cluster_identifier: "str"
    skip_final_cluster_snapshot: "bool"
    final_cluster_snapshot_identifier: "str | None"
    wait_for_completion: "bool"
    aws_conn_id: "str | None"
    poll_interval: "int"
    deferrable: "bool"
    max_attempts: "int"
