<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT! (protoc-gen-twirp_php 0.8.1)
# source: livekit_sip.proto

declare(strict_types=1);

namespace Livekit;

/**
 *
 *
 * Generated from protobuf service <code>livekit.SIP</code>
 */
interface SIP
{
    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/CreateSIPTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function CreateSIPTrunk(array $ctx, \Livekit\CreateSIPTrunkRequest $req): \Livekit\SIPTrunkInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/ListSIPTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function ListSIPTrunk(array $ctx, \Livekit\ListSIPTrunkRequest $req): \Livekit\ListSIPTrunkResponse;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/CreateSIPInboundTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function CreateSIPInboundTrunk(array $ctx, \Livekit\CreateSIPInboundTrunkRequest $req): \Livekit\SIPInboundTrunkInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/CreateSIPOutboundTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function CreateSIPOutboundTrunk(array $ctx, \Livekit\CreateSIPOutboundTrunkRequest $req): \Livekit\SIPOutboundTrunkInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/ListSIPInboundTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function ListSIPInboundTrunk(array $ctx, \Livekit\ListSIPInboundTrunkRequest $req): \Livekit\ListSIPInboundTrunkResponse;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/ListSIPOutboundTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function ListSIPOutboundTrunk(array $ctx, \Livekit\ListSIPOutboundTrunkRequest $req): \Livekit\ListSIPOutboundTrunkResponse;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/DeleteSIPTrunk</code>
     *
     * @throws \Twirp\Error
     */
    public function DeleteSIPTrunk(array $ctx, \Livekit\DeleteSIPTrunkRequest $req): \Livekit\SIPTrunkInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/CreateSIPDispatchRule</code>
     *
     * @throws \Twirp\Error
     */
    public function CreateSIPDispatchRule(array $ctx, \Livekit\CreateSIPDispatchRuleRequest $req): \Livekit\SIPDispatchRuleInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/ListSIPDispatchRule</code>
     *
     * @throws \Twirp\Error
     */
    public function ListSIPDispatchRule(array $ctx, \Livekit\ListSIPDispatchRuleRequest $req): \Livekit\ListSIPDispatchRuleResponse;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/DeleteSIPDispatchRule</code>
     *
     * @throws \Twirp\Error
     */
    public function DeleteSIPDispatchRule(array $ctx, \Livekit\DeleteSIPDispatchRuleRequest $req): \Livekit\SIPDispatchRuleInfo;

    /**
     *
     *
     * Generated from protobuf method <code>livekit.SIP/CreateSIPParticipant</code>
     *
     * @throws \Twirp\Error
     */
    public function CreateSIPParticipant(array $ctx, \Livekit\CreateSIPParticipantRequest $req): \Livekit\SIPParticipantInfo;
}
