"""
This file is generated by generator/run.py based on the Chrome DevTools Protocol.


https://chromedevtools.github.io/devtools-protocol/tot/DeviceOrientation/

***************************************************
                    Methods
***************************************************
"""
from __future__ import annotations

from cdpkit.protocol.base import CDPMethod, InputModel


class ClearDeviceOrientationOverride(CDPMethod[None]):
    """ Clears the overridden Device Orientation. """

    INPUT_VALIDATOR = None
    OUTPUT_VALIDATOR = None


class SetDeviceOrientationOverrideInput(InputModel):

    alpha: float
    beta: float
    gamma: float


class SetDeviceOrientationOverride(CDPMethod[None]):
    """ Overrides the Device Orientation. """

    INPUT_VALIDATOR = SetDeviceOrientationOverrideInput
    OUTPUT_VALIDATOR = None

    def __init__(
        self,
        *,
        alpha: float,
        beta: float,
        gamma: float
    ):
        super().__init__(
            alpha=alpha,
            beta=beta,
            gamma=gamma
        )
