// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.

package chat

// schema: chat.bsky.convo.leaveConvo

import (
	"context"

	"github.com/bluesky-social/indigo/xrpc"
)

// ConvoLeaveConvo_Input is the input argument to a chat.bsky.convo.leaveConvo call.
type ConvoLeaveConvo_Input struct {
	ConvoId string `json:"convoId" cborgen:"convoId"`
}

// ConvoLeaveConvo_Output is the output of a chat.bsky.convo.leaveConvo call.
type ConvoLeaveConvo_Output struct {
	ConvoId string `json:"convoId" cborgen:"convoId"`
	Rev     string `json:"rev" cborgen:"rev"`
}

// ConvoLeaveConvo calls the XRPC method "chat.bsky.convo.leaveConvo".
func ConvoLeaveConvo(ctx context.Context, c *xrpc.Client, input *ConvoLeaveConvo_Input) (*ConvoLeaveConvo_Output, error) {
	var out ConvoLeaveConvo_Output
	if err := c.Do(ctx, xrpc.Procedure, "application/json", "chat.bsky.convo.leaveConvo", nil, input, &out); err != nil {
		return nil, err
	}

	return &out, nil
}
