# Template with instructions
type: dagster_sling.SlingReplicationCollectionComponent  # Required
attributes:  # Optional: Attributes details
  connections: <one of: object, string>  # Optional: 
  replications:  # Optional: 
    - # Array of SlingReplicationSpecModelModel objects:
      path: <string>  # Required: 
      op:  # Optional: 
        name: <string>  # Optional: 
        tags: <one of: object, string>  # Optional: 
        description: <string>  # Optional: 
        pool: <string>  # Optional: 
        backfill_policy:  # Optional: 
          # Choose one of the following types:
          # Option 1 - SingleRunBackfillPolicyModel:
          # type: <string>  # Optional: 
          #
          # Option 2 - MultiRunBackfillPolicyModel:
          # type: <string>  # Optional: 
          # max_partitions_per_run: <integer>  # Optional: 
          #
      translation:  # Optional: 
        deps: <one of: array of string, string>  # Optional: The asset keys for the upstream assets that this asset depends on.
        description: <string>  # Optional: Human-readable description of the asset.
        metadata: <one of: object, string>  # Optional: Additional metadata for the asset.
        group_name: <string>  # Optional: Used to organize assets into groups, defaults to 'default'.
        skippable: <one of: boolean, string>  # Optional: Whether this asset can be omitted during materialization, causing downstream dependencies to skip.
        code_version: <string>  # Optional: A version representing the code that produced the asset. Increment this value when the code changes.
        owners: <one of: array of string, string>  # Optional: A list of strings representing owners of the asset. Each string can be a user's email address, or a team name prefixed with `team:`, e.g. `team:finops`.
        tags: <one of: object, string>  # Optional: Tags for filtering and organizing.
        kinds: <one of: array of string, string>  # Optional: A list of strings representing the kinds of the asset. These will be made visible in the Dagster UI.
        automation_condition: <string>  # Optional: The condition under which the asset will be automatically materialized.
        partitions_def:  # Optional: The partitions definition for the asset.
          # Choose one of the following types:
          # Option 1 - HourlyPartitionsDefinitionModel:
          # type: <string>  # Optional: 
          # start_date: <string>  # Optional: 
          # end_date: <string>  # Optional: 
          # timezone: <string>  # Optional: 
          # minute_offset: <integer>  # Optional: 
          #
          # Option 2 - DailyPartitionsDefinitionModel:
          # type: <string>  # Optional: 
          # start_date: <string>  # Optional: 
          # end_date: <string>  # Optional: 
          # timezone: <string>  # Optional: 
          # minute_offset: <integer>  # Optional: 
          # hour_offset: <integer>  # Optional: 
          #
          # Option 3 - WeeklyPartitionsDefinitionModel:
          # type: <string>  # Optional: 
          # start_date: <string>  # Optional: 
          # end_date: <string>  # Optional: 
          # timezone: <string>  # Optional: 
          # minute_offset: <integer>  # Optional: 
          # hour_offset: <integer>  # Optional: 
          # day_offset: <integer>  # Optional: 
          #
          # Option 4 - TimeWindowPartitionsDefinitionModel:
          # type: <string>  # Optional: 
          # start_date: <string>  # Optional: 
          # end_date: <string>  # Optional: 
          # timezone: <string>  # Optional: 
          # fmt: <string>  # Optional: 
          # cron_schedule: <string>  # Optional: 
          #
          # Option 5 - StaticPartitionsDefinitionModel:
          # type: <string>  # Optional: 
          # partition_keys:  # Optional: List of string items
            - <string>
          #
        freshness_policy: <string>  # Optional: The freshness policy for the asset.
        key: <string>  # Optional: 
        key_prefix: <one of: string, array of string>  # Optional: Prefix the existing asset key with the provided value.
      include_metadata: <one of: array of string, string>  # Optional: Optionally include additional metadata in materializations generated while executing your Sling models
  sling:  # Optional: 
    connections:  # Optional: 
      - # Array of SlingConnectionResource objects:
        name: <string>  # Required: The name of the connection, must match the name in your Sling replication configuration.
        type: <string>  # Required: Type of the source connection, must match the Sling connection types. Use 'file' for local storage.
        connection_string: <string>  # Optional: The optional connection string for the source database, if not using keyword arguments.