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

package org_tangled

// schema: org.tangled.temp.git.getMergeBase

import (
	"context"

	"github.com/bluesky-social/indigo/lex/util"
)

const (
	TempGitGetMergeBaseNSID = "org.tangled.temp.git.getMergeBase"
)

// TempGitGetMergeBase_Output is the output of a org.tangled.temp.git.getMergeBase call.
type TempGitGetMergeBase_Output struct {
	Commit string `json:"commit" cborgen:"commit"`
}

// TempGitGetMergeBase calls the XRPC method "org.tangled.temp.git.getMergeBase".
//
// base: Commit used to find the common base.
// head: Commit to list history for.
// repos: DIDs of the repositories to read objects from
func TempGitGetMergeBase(ctx context.Context, c util.LexClient, base string, head string, repos []string) (*TempGitGetMergeBase_Output, error) {
	var out TempGitGetMergeBase_Output

	params := map[string]interface{}{}
	params["base"] = base
	params["head"] = head
	params["repos"] = repos
	if err := c.LexDo(ctx, util.Query, "", "org.tangled.temp.git.getMergeBase", params, nil, &out); err != nil {
		return nil, err
	}

	return &out, nil
}
