# coding: utf-8

"""
    Seeq REST API

    No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen)  # noqa: E501

    OpenAPI spec version: 66.119.1-v202603241138-CD
    
    Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

from __future__ import annotations

from typing import Any, ClassVar, Dict, List, Optional, Set, TYPE_CHECKING

if TYPE_CHECKING:
    from . import *  # noqa: F401,F403


class DatasourceSummaryStatusOutputV1(object):
    swagger_types: ClassVar[Dict[str, str]] = ...
    attribute_map: ClassVar[Dict[str, str]] = ...

    _admin_only_accessible: Optional[bool]
    _allow_requests: Optional[bool]
    _average_indexing_duration: Optional[int]
    _cache_enabled: Optional[bool]
    _connections: Optional[List[ConnectionStatusOutputV1]]
    _connections_connected_count: Optional[int]
    _current_index_at: Optional[str]
    _current_indexing_duration: Optional[int]
    _current_indexing_mode: Optional[str]
    _current_indexing_percentage: Optional[int]
    _current_indexing_started_at: Optional[str]
    _datasource_class: str
    _datasource_id: str
    _datasource_labels: Optional[str]
    _id: str
    _indexing_schedule_supported: Optional[bool]
    _local_datasource: Optional[bool]
    _name: str
    _next_scheduled_index_at: Optional[str]
    _placeholder: Optional[bool]
    _previous_index_at: Optional[str]
    _remaining_indexing_duration: Optional[int]
    _sync_progress: Optional[SyncProgressOutputV1]
    _sync_status: Optional[str]
    _total_connections_count: Optional[int]


    def __init__(
        self,
        admin_only_accessible: Optional[bool] = False,
        allow_requests: Optional[bool] = False,
        average_indexing_duration: Optional[int] = None,
        cache_enabled: Optional[bool] = False,
        connections: Optional[List[ConnectionStatusOutputV1]] = None,
        connections_connected_count: Optional[int] = None,
        current_index_at: Optional[str] = None,
        current_indexing_duration: Optional[int] = None,
        current_indexing_mode: Optional[str] = None,
        current_indexing_percentage: Optional[int] = None,
        current_indexing_started_at: Optional[str] = None,
        datasource_class: Optional[str] = None,
        datasource_id: Optional[str] = None,
        datasource_labels: Optional[str] = None,
        id: Optional[str] = None,
        indexing_schedule_supported: Optional[bool] = False,
        local_datasource: Optional[bool] = None,
        name: Optional[str] = None,
        next_scheduled_index_at: Optional[str] = None,
        placeholder: Optional[bool] = False,
        previous_index_at: Optional[str] = None,
        remaining_indexing_duration: Optional[int] = None,
        sync_progress: Optional[SyncProgressOutputV1] = None,
        sync_status: Optional[str] = None,
        total_connections_count: Optional[int] = None,
    ) -> None: ...

    @property
    def admin_only_accessible(self) -> Optional[bool]: ...

    @admin_only_accessible.setter
    def admin_only_accessible(self, admin_only_accessible: Optional[bool]) -> None: ...

    @property
    def allow_requests(self) -> Optional[bool]: ...

    @allow_requests.setter
    def allow_requests(self, allow_requests: Optional[bool]) -> None: ...

    @property
    def average_indexing_duration(self) -> Optional[int]: ...

    @average_indexing_duration.setter
    def average_indexing_duration(self, average_indexing_duration: Optional[int]) -> None: ...

    @property
    def cache_enabled(self) -> Optional[bool]: ...

    @cache_enabled.setter
    def cache_enabled(self, cache_enabled: Optional[bool]) -> None: ...

    @property
    def connections(self) -> Optional[List[ConnectionStatusOutputV1]]: ...

    @connections.setter
    def connections(self, connections: Optional[List[ConnectionStatusOutputV1]]) -> None: ...

    @property
    def connections_connected_count(self) -> Optional[int]: ...

    @connections_connected_count.setter
    def connections_connected_count(self, connections_connected_count: Optional[int]) -> None: ...

    @property
    def current_index_at(self) -> Optional[str]: ...

    @current_index_at.setter
    def current_index_at(self, current_index_at: Optional[str]) -> None: ...

    @property
    def current_indexing_duration(self) -> Optional[int]: ...

    @current_indexing_duration.setter
    def current_indexing_duration(self, current_indexing_duration: Optional[int]) -> None: ...

    @property
    def current_indexing_mode(self) -> Optional[str]: ...

    @current_indexing_mode.setter
    def current_indexing_mode(self, current_indexing_mode: Optional[str]) -> None: ...

    @property
    def current_indexing_percentage(self) -> Optional[int]: ...

    @current_indexing_percentage.setter
    def current_indexing_percentage(self, current_indexing_percentage: Optional[int]) -> None: ...

    @property
    def current_indexing_started_at(self) -> Optional[str]: ...

    @current_indexing_started_at.setter
    def current_indexing_started_at(self, current_indexing_started_at: Optional[str]) -> None: ...

    @property
    def datasource_class(self) -> str: ...

    @datasource_class.setter
    def datasource_class(self, datasource_class: str) -> None: ...

    @property
    def datasource_id(self) -> str: ...

    @datasource_id.setter
    def datasource_id(self, datasource_id: str) -> None: ...

    @property
    def datasource_labels(self) -> Optional[str]: ...

    @datasource_labels.setter
    def datasource_labels(self, datasource_labels: Optional[str]) -> None: ...

    @property
    def id(self) -> str: ...

    @id.setter
    def id(self, id: str) -> None: ...

    @property
    def indexing_schedule_supported(self) -> Optional[bool]: ...

    @indexing_schedule_supported.setter
    def indexing_schedule_supported(self, indexing_schedule_supported: Optional[bool]) -> None: ...

    @property
    def local_datasource(self) -> Optional[bool]: ...

    @local_datasource.setter
    def local_datasource(self, local_datasource: Optional[bool]) -> None: ...

    @property
    def name(self) -> str: ...

    @name.setter
    def name(self, name: str) -> None: ...

    @property
    def next_scheduled_index_at(self) -> Optional[str]: ...

    @next_scheduled_index_at.setter
    def next_scheduled_index_at(self, next_scheduled_index_at: Optional[str]) -> None: ...

    @property
    def placeholder(self) -> Optional[bool]: ...

    @placeholder.setter
    def placeholder(self, placeholder: Optional[bool]) -> None: ...

    @property
    def previous_index_at(self) -> Optional[str]: ...

    @previous_index_at.setter
    def previous_index_at(self, previous_index_at: Optional[str]) -> None: ...

    @property
    def remaining_indexing_duration(self) -> Optional[int]: ...

    @remaining_indexing_duration.setter
    def remaining_indexing_duration(self, remaining_indexing_duration: Optional[int]) -> None: ...

    @property
    def sync_progress(self) -> Optional[SyncProgressOutputV1]: ...

    @sync_progress.setter
    def sync_progress(self, sync_progress: Optional[SyncProgressOutputV1]) -> None: ...

    @property
    def sync_status(self) -> Optional[str]: ...

    @sync_status.setter
    def sync_status(self, sync_status: Optional[str]) -> None: ...

    @property
    def total_connections_count(self) -> Optional[int]: ...

    @total_connections_count.setter
    def total_connections_count(self, total_connections_count: Optional[int]) -> None: ...

    def to_dict(self) -> Dict[str, Any]: ...
    def to_str(self) -> str: ...
    def __repr__(self) -> str: ...
    def __eq__(self, other: object) -> bool: ...
    def __ne__(self, other: object) -> bool: ...
