# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from Browser.generated import playwright_pb2 as playwright__pb2


class PlaywrightStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.TakeScreenshot = channel.unary_unary(
                '/Playwright/TakeScreenshot',
                request_serializer=playwright__pb2.Request.ScreenshotPath.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.CloseBrowser = channel.unary_unary(
                '/Playwright/CloseBrowser',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GoTo = channel.unary_unary(
                '/Playwright/GoTo',
                request_serializer=playwright__pb2.Request.Url.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GoBack = channel.unary_unary(
                '/Playwright/GoBack',
                request_serializer=playwright__pb2.Request.Url.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GoForward = channel.unary_unary(
                '/Playwright/GoForward',
                request_serializer=playwright__pb2.Request.Url.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GetTitle = channel.unary_unary(
                '/Playwright/GetTitle',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.GetElementCount = channel.unary_unary(
                '/Playwright/GetElementCount',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Int.FromString,
                )
        self.InputText = channel.unary_unary(
                '/Playwright/InputText',
                request_serializer=playwright__pb2.Request.TextInput.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.TypeText = channel.unary_unary(
                '/Playwright/TypeText',
                request_serializer=playwright__pb2.Request.TypeText.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.FillText = channel.unary_unary(
                '/Playwright/FillText',
                request_serializer=playwright__pb2.Request.FillText.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.ClearText = channel.unary_unary(
                '/Playwright/ClearText',
                request_serializer=playwright__pb2.Request.ClearText.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GetDomProperty = channel.unary_unary(
                '/Playwright/GetDomProperty',
                request_serializer=playwright__pb2.Request.ElementProperty.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.GetBoolProperty = channel.unary_unary(
                '/Playwright/GetBoolProperty',
                request_serializer=playwright__pb2.Request.ElementProperty.SerializeToString,
                response_deserializer=playwright__pb2.Response.Bool.FromString,
                )
        self.GetTextContent = channel.unary_unary(
                '/Playwright/GetTextContent',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.GetUrl = channel.unary_unary(
                '/Playwright/GetUrl',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.Click = channel.unary_unary(
                '/Playwright/Click',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.Press = channel.unary_unary(
                '/Playwright/Press',
                request_serializer=playwright__pb2.Request.PressKeys.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.GetSelectContent = channel.unary_unary(
                '/Playwright/GetSelectContent',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Select.FromString,
                )
        self.SelectOption = channel.unary_unary(
                '/Playwright/SelectOption',
                request_serializer=playwright__pb2.Request.SelectElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.DeselectOption = channel.unary_unary(
                '/Playwright/DeselectOption',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.CheckCheckbox = channel.unary_unary(
                '/Playwright/CheckCheckbox',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.UncheckCheckbox = channel.unary_unary(
                '/Playwright/UncheckCheckbox',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.Health = channel.unary_unary(
                '/Playwright/Health',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.String.FromString,
                )
        self.SetTimeout = channel.unary_unary(
                '/Playwright/SetTimeout',
                request_serializer=playwright__pb2.Request.Timeout.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.AddStyleTag = channel.unary_unary(
                '/Playwright/AddStyleTag',
                request_serializer=playwright__pb2.Request.StyleTag.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.HighlightElements = channel.unary_unary(
                '/Playwright/HighlightElements',
                request_serializer=playwright__pb2.Request.ElementSelectorWithDuration.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.ClickWithOptions = channel.unary_unary(
                '/Playwright/ClickWithOptions',
                request_serializer=playwright__pb2.Request.ElementSelectorWithOptions.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.Focus = channel.unary_unary(
                '/Playwright/Focus',
                request_serializer=playwright__pb2.Request.ElementSelector.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.WaitForElementsState = channel.unary_unary(
                '/Playwright/WaitForElementsState',
                request_serializer=playwright__pb2.Request.ElementSelectorWithOptions.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.ExecuteJavascriptOnPage = channel.unary_unary(
                '/Playwright/ExecuteJavascriptOnPage',
                request_serializer=playwright__pb2.Request.JavascriptCode.SerializeToString,
                response_deserializer=playwright__pb2.Response.JavascriptExecutionResult.FromString,
                )
        self.GetPageState = channel.unary_unary(
                '/Playwright/GetPageState',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.JavascriptExecutionResult.FromString,
                )
        self.AutoActivatePages = channel.unary_unary(
                '/Playwright/AutoActivatePages',
                request_serializer=playwright__pb2.Request.Empty.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.SwitchPage = channel.unary_unary(
                '/Playwright/SwitchPage',
                request_serializer=playwright__pb2.Request.Index.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.SwitchContext = channel.unary_unary(
                '/Playwright/SwitchContext',
                request_serializer=playwright__pb2.Request.Index.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.SwitchBrowser = channel.unary_unary(
                '/Playwright/SwitchBrowser',
                request_serializer=playwright__pb2.Request.Index.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.CreatePage = channel.unary_unary(
                '/Playwright/CreatePage',
                request_serializer=playwright__pb2.Request.Url.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.CreateContext = channel.unary_unary(
                '/Playwright/CreateContext',
                request_serializer=playwright__pb2.Request.Context.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )
        self.CreateBrowser = channel.unary_unary(
                '/Playwright/CreateBrowser',
                request_serializer=playwright__pb2.Request.Browser.SerializeToString,
                response_deserializer=playwright__pb2.Response.Empty.FromString,
                )


class PlaywrightServicer(object):
    """Missing associated documentation comment in .proto file."""

    def TakeScreenshot(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CloseBrowser(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GoTo(self, request, context):
        """Opens the url in currently open Playwright page 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GoBack(self, request, context):
        """Navigate to the next page in history 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GoForward(self, request, context):
        """Navigate to the previous page in history. 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTitle(self, request, context):
        """Gets title of currently open Playwright page 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetElementCount(self, request, context):
        """Returns the count of elements found with selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def InputText(self, request, context):
        """Wraps playwrights page.fill to input text into input specified with selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def TypeText(self, request, context):
        """Wraps playwrights page.type to type text into input specified with selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def FillText(self, request, context):
        """Wraps playwrights page.fill to fill text of input specified with selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ClearText(self, request, context):
        """Wraps playwrights page.fill with empty text to clear input specified with selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetDomProperty(self, request, context):
        """Gets the DOM property 'property' of selector specified element 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetBoolProperty(self, request, context):
        """Gets the boolean DOM property 'property' of selector specified element 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetTextContent(self, request, context):
        """Wraps playwrights page.textContent, returns textcontent of element by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetUrl(self, request, context):
        """*Returns current playwright page url
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Click(self, request, context):
        """Clicks element specified by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Press(self, request, context):
        """Inputs a list of keypresses to element specified by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetSelectContent(self, request, context):
        """Gets the Select element specified by selector and returns the contents 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectOption(self, request, context):
        """Selects option matching matcher in Select element matching selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeselectOption(self, request, context):
        """Deselects options in Select element matching selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CheckCheckbox(self, request, context):
        """Checks checkbox specified by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UncheckCheckbox(self, request, context):
        """Unchecks checkbox specified by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Health(self, request, context):
        """Health check endpoint for the service 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetTimeout(self, request, context):
        """Set's  playwright timeout 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AddStyleTag(self, request, context):
        """Adds a <style> to head of site. 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def HighlightElements(self, request, context):
        """Highlights elements matching selector for duration 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ClickWithOptions(self, request, context):
        """Clicks element specified by selector and options 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Focus(self, request, context):
        """Focuses element specified by selector 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def WaitForElementsState(self, request, context):
        """Waits for element be in a specific state
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ExecuteJavascriptOnPage(self, request, context):
        """Executes javascript on the active page 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetPageState(self, request, context):
        """Get Page State JSON 
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AutoActivatePages(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SwitchPage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SwitchContext(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SwitchBrowser(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreatePage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateContext(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CreateBrowser(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_PlaywrightServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'TakeScreenshot': grpc.unary_unary_rpc_method_handler(
                    servicer.TakeScreenshot,
                    request_deserializer=playwright__pb2.Request.ScreenshotPath.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'CloseBrowser': grpc.unary_unary_rpc_method_handler(
                    servicer.CloseBrowser,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GoTo': grpc.unary_unary_rpc_method_handler(
                    servicer.GoTo,
                    request_deserializer=playwright__pb2.Request.Url.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GoBack': grpc.unary_unary_rpc_method_handler(
                    servicer.GoBack,
                    request_deserializer=playwright__pb2.Request.Url.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GoForward': grpc.unary_unary_rpc_method_handler(
                    servicer.GoForward,
                    request_deserializer=playwright__pb2.Request.Url.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GetTitle': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTitle,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'GetElementCount': grpc.unary_unary_rpc_method_handler(
                    servicer.GetElementCount,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Int.SerializeToString,
            ),
            'InputText': grpc.unary_unary_rpc_method_handler(
                    servicer.InputText,
                    request_deserializer=playwright__pb2.Request.TextInput.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'TypeText': grpc.unary_unary_rpc_method_handler(
                    servicer.TypeText,
                    request_deserializer=playwright__pb2.Request.TypeText.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'FillText': grpc.unary_unary_rpc_method_handler(
                    servicer.FillText,
                    request_deserializer=playwright__pb2.Request.FillText.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'ClearText': grpc.unary_unary_rpc_method_handler(
                    servicer.ClearText,
                    request_deserializer=playwright__pb2.Request.ClearText.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GetDomProperty': grpc.unary_unary_rpc_method_handler(
                    servicer.GetDomProperty,
                    request_deserializer=playwright__pb2.Request.ElementProperty.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'GetBoolProperty': grpc.unary_unary_rpc_method_handler(
                    servicer.GetBoolProperty,
                    request_deserializer=playwright__pb2.Request.ElementProperty.FromString,
                    response_serializer=playwright__pb2.Response.Bool.SerializeToString,
            ),
            'GetTextContent': grpc.unary_unary_rpc_method_handler(
                    servicer.GetTextContent,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'GetUrl': grpc.unary_unary_rpc_method_handler(
                    servicer.GetUrl,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'Click': grpc.unary_unary_rpc_method_handler(
                    servicer.Click,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'Press': grpc.unary_unary_rpc_method_handler(
                    servicer.Press,
                    request_deserializer=playwright__pb2.Request.PressKeys.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'GetSelectContent': grpc.unary_unary_rpc_method_handler(
                    servicer.GetSelectContent,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Select.SerializeToString,
            ),
            'SelectOption': grpc.unary_unary_rpc_method_handler(
                    servicer.SelectOption,
                    request_deserializer=playwright__pb2.Request.SelectElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'DeselectOption': grpc.unary_unary_rpc_method_handler(
                    servicer.DeselectOption,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'CheckCheckbox': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckCheckbox,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'UncheckCheckbox': grpc.unary_unary_rpc_method_handler(
                    servicer.UncheckCheckbox,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'Health': grpc.unary_unary_rpc_method_handler(
                    servicer.Health,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.String.SerializeToString,
            ),
            'SetTimeout': grpc.unary_unary_rpc_method_handler(
                    servicer.SetTimeout,
                    request_deserializer=playwright__pb2.Request.Timeout.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'AddStyleTag': grpc.unary_unary_rpc_method_handler(
                    servicer.AddStyleTag,
                    request_deserializer=playwright__pb2.Request.StyleTag.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'HighlightElements': grpc.unary_unary_rpc_method_handler(
                    servicer.HighlightElements,
                    request_deserializer=playwright__pb2.Request.ElementSelectorWithDuration.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'ClickWithOptions': grpc.unary_unary_rpc_method_handler(
                    servicer.ClickWithOptions,
                    request_deserializer=playwright__pb2.Request.ElementSelectorWithOptions.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'Focus': grpc.unary_unary_rpc_method_handler(
                    servicer.Focus,
                    request_deserializer=playwright__pb2.Request.ElementSelector.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'WaitForElementsState': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitForElementsState,
                    request_deserializer=playwright__pb2.Request.ElementSelectorWithOptions.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'ExecuteJavascriptOnPage': grpc.unary_unary_rpc_method_handler(
                    servicer.ExecuteJavascriptOnPage,
                    request_deserializer=playwright__pb2.Request.JavascriptCode.FromString,
                    response_serializer=playwright__pb2.Response.JavascriptExecutionResult.SerializeToString,
            ),
            'GetPageState': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPageState,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.JavascriptExecutionResult.SerializeToString,
            ),
            'AutoActivatePages': grpc.unary_unary_rpc_method_handler(
                    servicer.AutoActivatePages,
                    request_deserializer=playwright__pb2.Request.Empty.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'SwitchPage': grpc.unary_unary_rpc_method_handler(
                    servicer.SwitchPage,
                    request_deserializer=playwright__pb2.Request.Index.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'SwitchContext': grpc.unary_unary_rpc_method_handler(
                    servicer.SwitchContext,
                    request_deserializer=playwright__pb2.Request.Index.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'SwitchBrowser': grpc.unary_unary_rpc_method_handler(
                    servicer.SwitchBrowser,
                    request_deserializer=playwright__pb2.Request.Index.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'CreatePage': grpc.unary_unary_rpc_method_handler(
                    servicer.CreatePage,
                    request_deserializer=playwright__pb2.Request.Url.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'CreateContext': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateContext,
                    request_deserializer=playwright__pb2.Request.Context.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
            'CreateBrowser': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateBrowser,
                    request_deserializer=playwright__pb2.Request.Browser.FromString,
                    response_serializer=playwright__pb2.Response.Empty.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'Playwright', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class Playwright(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def TakeScreenshot(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/TakeScreenshot',
            playwright__pb2.Request.ScreenshotPath.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CloseBrowser(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/CloseBrowser',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GoTo(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GoTo',
            playwright__pb2.Request.Url.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GoBack(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GoBack',
            playwright__pb2.Request.Url.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GoForward(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GoForward',
            playwright__pb2.Request.Url.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTitle(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetTitle',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetElementCount(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetElementCount',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Int.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def InputText(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/InputText',
            playwright__pb2.Request.TextInput.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def TypeText(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/TypeText',
            playwright__pb2.Request.TypeText.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def FillText(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/FillText',
            playwright__pb2.Request.FillText.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ClearText(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/ClearText',
            playwright__pb2.Request.ClearText.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetDomProperty(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetDomProperty',
            playwright__pb2.Request.ElementProperty.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetBoolProperty(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetBoolProperty',
            playwright__pb2.Request.ElementProperty.SerializeToString,
            playwright__pb2.Response.Bool.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetTextContent(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetTextContent',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetUrl(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetUrl',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Click(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/Click',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Press(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/Press',
            playwright__pb2.Request.PressKeys.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetSelectContent(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetSelectContent',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Select.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SelectOption(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/SelectOption',
            playwright__pb2.Request.SelectElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeselectOption(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/DeselectOption',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CheckCheckbox(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/CheckCheckbox',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UncheckCheckbox(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/UncheckCheckbox',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Health(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/Health',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.String.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetTimeout(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/SetTimeout',
            playwright__pb2.Request.Timeout.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AddStyleTag(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/AddStyleTag',
            playwright__pb2.Request.StyleTag.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def HighlightElements(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/HighlightElements',
            playwright__pb2.Request.ElementSelectorWithDuration.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ClickWithOptions(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/ClickWithOptions',
            playwright__pb2.Request.ElementSelectorWithOptions.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def Focus(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/Focus',
            playwright__pb2.Request.ElementSelector.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def WaitForElementsState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/WaitForElementsState',
            playwright__pb2.Request.ElementSelectorWithOptions.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ExecuteJavascriptOnPage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/ExecuteJavascriptOnPage',
            playwright__pb2.Request.JavascriptCode.SerializeToString,
            playwright__pb2.Response.JavascriptExecutionResult.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetPageState(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/GetPageState',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.JavascriptExecutionResult.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AutoActivatePages(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/AutoActivatePages',
            playwright__pb2.Request.Empty.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SwitchPage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/SwitchPage',
            playwright__pb2.Request.Index.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SwitchContext(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/SwitchContext',
            playwright__pb2.Request.Index.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SwitchBrowser(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/SwitchBrowser',
            playwright__pb2.Request.Index.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreatePage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/CreatePage',
            playwright__pb2.Request.Url.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateContext(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/CreateContext',
            playwright__pb2.Request.Context.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateBrowser(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/Playwright/CreateBrowser',
            playwright__pb2.Request.Browser.SerializeToString,
            playwright__pb2.Response.Empty.FromString,
            options, channel_credentials,
            call_credentials, compression, wait_for_ready, timeout, metadata)
