@indexea/sdk
Version:
Indexea JavaScript SDK (indexea.com)
347 lines (286 loc) • 12.3 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Indexea OpenAPI
* 这是 Indexea 搜索服务平台的 OpenAPI,用于描述平台的所有接口信息,你可以通过这个页面来了解和在线验证平台的所有接口信息。 ### Errors 本 API 使用标准的 HTTP 状态码来指示操作成功或者失败,如果失败将会在 body 中以 JSON 格式提供详细的错误信息,如下所示: ``` { \"error\": 404, \"message\": \"page not found\" } ```
*
* The version of the OpenAPI document: 1.0.0
* Contact: indexea.com@gmail.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
Message,
Messages,
} from '../models';
import {
MessageFromJSON,
MessageToJSON,
MessagesFromJSON,
MessagesToJSON,
} from '../models';
export interface MessageDeleteRequest {
id: number;
}
export interface MessageFeedbackRequest {
content: string;
type: MessageFeedbackTypeEnum;
}
export interface MessageListRequest {
scope: MessageListScopeEnum;
from?: number;
size?: number;
}
export interface MessageReadRequest {
id: string;
}
export interface MessageSendRequest {
receiver: number;
msg: string;
}
/**
*
*/
export class MessageApi extends runtime.BaseAPI {
/**
* 删除消息
* 删除消息
*/
async messageDeleteRaw(requestParameters: MessageDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling messageDelete.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/accounts/message`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 删除消息
* 删除消息
*/
async messageDelete(requestParameters: MessageDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.messageDeleteRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 反馈意见
*/
async messageFeedbackRaw(requestParameters: MessageFeedbackRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.content === null || requestParameters.content === undefined) {
throw new runtime.RequiredError('content','Required parameter requestParameters.content was null or undefined when calling messageFeedback.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling messageFeedback.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'application/x-www-form-urlencoded' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.content !== undefined) {
formParams.append('content', requestParameters.content as any);
}
if (requestParameters.type !== undefined) {
formParams.append('type', requestParameters.type as any);
}
const response = await this.request({
path: `/accounts/feedback`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 反馈意见
*/
async messageFeedback(requestParameters: MessageFeedbackRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.messageFeedbackRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取我相关的消息信息,包括未读消息数量、最新消息等
*/
async messageListRaw(requestParameters: MessageListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Messages>> {
if (requestParameters.scope === null || requestParameters.scope === undefined) {
throw new runtime.RequiredError('scope','Required parameter requestParameters.scope was null or undefined when calling messageList.');
}
const queryParameters: any = {};
if (requestParameters.scope !== undefined) {
queryParameters['scope'] = requestParameters.scope;
}
if (requestParameters.from !== undefined) {
queryParameters['from'] = requestParameters.from;
}
if (requestParameters.size !== undefined) {
queryParameters['size'] = requestParameters.size;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/accounts/message`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MessagesFromJSON(jsonValue));
}
/**
* 获取我相关的消息信息,包括未读消息数量、最新消息等
*/
async messageList(requestParameters: MessageListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Messages> {
const response = await this.messageListRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 标识消息为已读
* 标识消息为已读
*/
async messageReadRaw(requestParameters: MessageReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Messages>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling messageRead.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/accounts/message`,
method: 'PATCH',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MessagesFromJSON(jsonValue));
}
/**
* 标识消息为已读
* 标识消息为已读
*/
async messageRead(requestParameters: MessageReadRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Messages> {
const response = await this.messageReadRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 发送站内消息给某人
* 发送消息
*/
async messageSendRaw(requestParameters: MessageSendRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Message>> {
if (requestParameters.receiver === null || requestParameters.receiver === undefined) {
throw new runtime.RequiredError('receiver','Required parameter requestParameters.receiver was null or undefined when calling messageSend.');
}
if (requestParameters.msg === null || requestParameters.msg === undefined) {
throw new runtime.RequiredError('msg','Required parameter requestParameters.msg was null or undefined when calling messageSend.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'application/x-www-form-urlencoded' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.receiver !== undefined) {
formParams.append('receiver', requestParameters.receiver as any);
}
if (requestParameters.msg !== undefined) {
formParams.append('msg', requestParameters.msg as any);
}
const response = await this.request({
path: `/accounts/message`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => MessageFromJSON(jsonValue));
}
/**
* 发送站内消息给某人
* 发送消息
*/
async messageSend(requestParameters: MessageSendRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Message> {
const response = await this.messageSendRaw(requestParameters, initOverrides);
return await response.value();
}
}
/**
* @export
*/
export const MessageFeedbackTypeEnum = {
General: 'general',
Bugs: 'bugs',
Feature: 'feature'
} as const;
export type MessageFeedbackTypeEnum = typeof MessageFeedbackTypeEnum[keyof typeof MessageFeedbackTypeEnum];
/**
* @export
*/
export const MessageListScopeEnum = {
All: 'all',
Unread: 'unread',
Read: 'read'
} as const;
export type MessageListScopeEnum = typeof MessageListScopeEnum[keyof typeof MessageListScopeEnum];