// @generated by protoc-gen-connect-es v1.6.1 with parameter "target=ts,import_extension=.js"
// @generated from file gfxcafe/oku/account/v1/login.proto (package gfxcafe.oku.account.v1, syntax proto3)
/* eslint-disable */
// @ts-nocheck

import { ChallengeRequest, ChallengeResponse, LinkRequest, LinkResponse, SolutionRequest, SolutionResponse } from "./login_pb.js";
import { MethodKind } from "@bufbuild/protobuf";

/**
 * LoginService provides wallet-based authentication
 *
 * @generated from service gfxcafe.oku.account.v1.LoginService
 */
export const LoginService = {
  typeName: "gfxcafe.oku.account.v1.LoginService",
  methods: {
    /**
     * Generate a login challenge for wallet signing (/login/challenge)
     *
     * @generated from rpc gfxcafe.oku.account.v1.LoginService.Challenge
     */
    challenge: {
      name: "Challenge",
      I: ChallengeRequest,
      O: ChallengeResponse,
      kind: MethodKind.Unary,
    },
    /**
     * Verify the signed challenge and return auth token (/login/solution)
     *
     * @generated from rpc gfxcafe.oku.account.v1.LoginService.Solution
     */
    solution: {
      name: "Solution",
      I: SolutionRequest,
      O: SolutionResponse,
      kind: MethodKind.Unary,
    },
    /**
     * Link an Ethereum address to an existing user account (/login/link)
     *
     * @generated from rpc gfxcafe.oku.account.v1.LoginService.Link
     */
    link: {
      name: "Link",
      I: LinkRequest,
      O: LinkResponse,
      kind: MethodKind.Unary,
    },
  }
} as const;

