// @generated by protoc-gen-connect-es v1.3.0 with parameter "target=ts"
// @generated from file user/user.proto (package user, syntax proto3)
/* eslint-disable */
// @ts-nocheck

import { Config, Group, GroupID, GroupInfoRequest, GroupInvite, Groups, LoginResponse, ShareRequest, User, VerifyUserRequest } from "./user_pb.js";
import { Empty, MethodKind } from "@bufbuild/protobuf";

/**
 * @generated from service user.UserService
 */
export const UserService = {
  typeName: "user.UserService",
  methods: {
    /**
     * @generated from rpc user.UserService.Register
     */
    register: {
      name: "Register",
      I: User,
      O: User,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.Login
     */
    login: {
      name: "Login",
      I: User,
      O: LoginResponse,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.Logout
     */
    logout: {
      name: "Logout",
      I: Empty,
      O: Empty,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.ResetPassword
     */
    resetPassword: {
      name: "ResetPassword",
      I: User,
      O: Empty,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.VerifyUser
     */
    verifyUser: {
      name: "VerifyUser",
      I: VerifyUserRequest,
      O: Empty,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.UpdateConfig
     */
    updateConfig: {
      name: "UpdateConfig",
      I: Config,
      O: Empty,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.CreateGroupInvite
     */
    createGroupInvite: {
      name: "CreateGroupInvite",
      I: GroupID,
      O: GroupInvite,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.JoinGroup
     */
    joinGroup: {
      name: "JoinGroup",
      I: GroupInvite,
      O: Group,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.GroupInfo
     */
    groupInfo: {
      name: "GroupInfo",
      I: GroupInfoRequest,
      O: Group,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.CreateGroup
     */
    createGroup: {
      name: "CreateGroup",
      I: Group,
      O: Group,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.GetGroups
     */
    getGroups: {
      name: "GetGroups",
      I: Empty,
      O: Groups,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.DeleteGroup
     */
    deleteGroup: {
      name: "DeleteGroup",
      I: Group,
      O: Empty,
      kind: MethodKind.Unary,
    },
    /**
     * @generated from rpc user.UserService.Share
     */
    share: {
      name: "Share",
      I: ShareRequest,
      O: Empty,
      kind: MethodKind.Unary,
    },
  }
} as const;

