from typing import Optional, List

from .standard_result import StandardResult
from actionstreamer.Model import Stream


class StreamResult(StandardResult):
    def __init__(self, code: int = 0, description: str = '', stream: Optional[Stream] = None):
        super().__init__(code, description)
        self.stream = stream or Stream()


class StreamListResult(StandardResult):
    def __init__(self, code: int = 0, description: str = '', stream_list: Optional[List[Stream]] = None):
        super().__init__(code, description)
        self.stream_list = stream_list or []