631aa98
/* tslint:disable */
/* eslint-disable */
/**
* gitdata api - version 1.0
*
*
## Conventions
### Response envelope
Every JSON response uses the same envelope:
| field | meaning |
|---|---|
| `code` | always equal to the HTTP status code |
| `message` | human-readable result / error summary |
| `data` | payload, `null` for errors and empty results |
| `error` | field-level / technical detail (e.g. validation errors), may be `null` |
| `error_code` | stable machine-readable code on 4xx (e.g. `conflict`, `rate_limited`), may be `null` |
| `request_id` / `log_id` | correlation ids, also returned as `X-Request-Id` / `X-Log-Id` headers |
Successful `POST` creation returns `200` (not `201`); empty results use `200` with `data: null`.
- `POST /auth/logout` is idempotent: repeating it always succeeds with `200`.
### Authentication
- `session_cookie`: KenOAuth access token carried in the `gitdata_session`
cookie. `GET /auth/login` starts the OIDC authorization-code + PKCE flow;
`POST /auth/refresh` rotates the access/refresh pair; `POST /auth/logout`
revokes the KenOAuth session and clears both cookies.
- `basic_access_key`: HTTP Basic auth with a KenOAuth-issued access key.
**Scope: git repository endpoints only** (`/repos/*`, `/graphql`); it is NOT
accepted by chat/issues/space/user endpoints.
### URL & parameter style
- Paths are `kebab-case`, plural nouns, nesting expresses ownership.
- Query/path/JSON field names are `snake_case`; enum values are `snake_case`.
- All endpoints are versioned under `/api/v1`. `/api/v1/internal/*` is guarded
by the `x-gitdata-service-key` header and is NOT documented here.
- State-transition actions use `POST {resource}/{id}/{verb}` (close/reopen);
idempotent whole-resource state uses `PUT` (default branch, pin, read-state);
partial updates use `PATCH`.
### Pagination
- Offset style: `?limit=&offset=` (default 50, max 100 unless stated),
response `data` is `{ items, total, limit, offset }`.
- Cursor style (chat message/sequence data): `?before_seq=&after_seq=&limit=`,
response contains `has_more`.
### PATCH semantics (three-state fields)
Update commands use `Option<Option<T>>` for clearable fields:
- field **absent** → unchanged
- field `null` → cleared
- field value → set
Example: `{"milestone_id": null}` unassigns the milestone; omitting
`milestone_id` leaves it untouched.
### 2FA
TOTP enrollment, recovery codes and sensitive-operation verification are
handled by KenOAuth; GitData only proxies the account-management endpoints.
### Operations
- `GET /healthz` — liveness probe (no auth, outside `/api/v1`).
- `GET /readyz` — readiness probe: database + redis check, `503` when down.
- Runtime metrics are pushed to the configured OTLP collector (30s interval);
there is no scrape endpoint.
- Cross-origin browser access is disabled by default; the API expects a
same-origin reverse proxy. Enable `web.cors_allow_origins` to allowlist
other origins.
### Abuse controls
- Creation endpoints are subject to per-user rolling 24h quotas
(`[quota]` config; 0 disables). Exceeding a quota returns `429`
with `error_code: "rate_limited"`.
### Idempotency
- `POST /chat/rooms/{room_id}/messages` accepts `nonce`: unique per room;
retrying with the same nonce returns the original message instead of a duplicate.
### Resource references
- User references in responses embed a `user` object (`UserDto`) wherever a
single person is shown; raw uuid fields are named `*_id` consistently.
- Viewer-specific state is embedded, not fetched separately: `RepoDto.me`
carries `starred`/`watch_mode`, `IssueDto.viewer_watch` carries the caller
watch mode. `PUT /repos/{space}/{repo}/star|unstar` style reads do not exist.
### Identifiers
- Issues are addressable by UUID **or** board-scoped number
(e.g. `/issues/{space}/boards/{board}/issues/123`).
- Binary uploads use raw request bodies with a content-type header
(e.g. `PUT /me/avatar` accepts `image/*` bytes, not base64 JSON).
*
* OpenAPI version: 3.1.0
*
*
* NOTE: This file is auto generated by the alova's vscode plugin.
*
* https://alova.js.org/devtools/vscode
*
* **Do not edit the file manually.**
*/
import type { Alova, AlovaMethodCreateConfig, AlovaGenerics, Method } from 'alova';
import type { $$userConfigMap, alovaInstance } from './index';
import type apiDefinitions from './apiDefinitions';
type CollapsedAlova = typeof alovaInstance;
type UserMethodConfigMap = typeof $$userConfigMap;
type Alova2MethodConfig<Responded> =
CollapsedAlova extends Alova<
AlovaGenerics<
any,
any,
infer RequestConfig,
infer Response,
infer ResponseHeader,
infer L1Cache,
infer L2Cache,
infer SE
>
>
? Omit<
AlovaMethodCreateConfig<
AlovaGenerics<Responded, any, RequestConfig, Response, ResponseHeader, L1Cache, L2Cache, SE>,
any,
Responded
>,
'params'
>
: never;
// Extract the return type of transform function that define in $$userConfigMap, if it not exists, use the default type.
type ExtractUserDefinedTransformed<
DefinitionKey extends keyof typeof apiDefinitions,
Default
> = DefinitionKey extends keyof UserMethodConfigMap
? UserMethodConfigMap[DefinitionKey]['transform'] extends (...args: any[]) => any
? Awaited<ReturnType<UserMethodConfigMap[DefinitionKey]['transform']>>
: Default
: Default;
type Alova2Method<
Responded,
DefinitionKey extends keyof typeof apiDefinitions,
CurrentConfig extends Alova2MethodConfig<any>
> =
CollapsedAlova extends Alova<
AlovaGenerics<
any,
any,
infer RequestConfig,
infer Response,
infer ResponseHeader,
infer L1Cache,
infer L2Cache,
infer SE
>
>
? Method<
AlovaGenerics<
CurrentConfig extends undefined
? ExtractUserDefinedTransformed<DefinitionKey, Responded>
: CurrentConfig['transform'] extends (...args: any[]) => any
? Awaited<ReturnType<CurrentConfig['transform']>>
: ExtractUserDefinedTransformed<DefinitionKey, Responded>,
any,
RequestConfig,
Response,
ResponseHeader,
L1Cache,
L2Cache,
SE
>
>
: never;
export type HookEventKind = 'pre_receive' | 'post_receive' | 'update' | 'push' | 'tag' | 'merge_request';
export type SpaceImageKind = 'avatar' | 'banner' | 'invite_banner' | 'embed_splash';
export type NotificationType = 'mention' | 'reply' | 'follow' | 'invite' | 'assignment' | 'system';
export type SessionKind = 'WebLogin' | 'BearerAccess';
export interface TotpCodeCmd {
code: string;
}
export interface TotpEnableCmd {
code: string;
password: string;
}
export interface RegenerateRecoveryCodesCmd {
password: string;
}
export type AccessKeyScope = 'read' | 'write';
export interface CreateAccessKeyCmd {
expires_at?: string | null;
name: string;
scope: AccessKeyScope;
}
export interface ChangePasswordCmd {
new_password: string;
old_password: string;
}
export interface AddSshKeyCmd {
content: string;
name: string;
}
export interface CreateAttachmentCmd {
content_type: string;
description?: string | null;
filename: string;
size: number;
}
export interface AcceptRoomInviteCmd {
code: string;
}
export type PresenceStatus = 'Active' | 'Away' | 'Dnd' | 'Offline';
export interface SetPresenceCmd {
activities?: null;
status: PresenceStatus;
}
export interface CreateIssueAttachmentCmd {
content_type: string;
filename: string;
size: number;
/**
* Checked for membership so unbound uploads are still space-scoped.
*/
space_name: string;
}
export type ProfileVisibility = 'Public' | 'RegisteredOnly' | 'MembersOnly' | 'Private';
export interface UpdateProfileCmd {
bio?: string | null;
company?: string | null;
date_of_birth?: string | null;
display_name?: string | null;
language?: string | null;
locale?: string | null;
location?: string | null;
pronouns?: string | null;
real_name?: string | null;
show_activity?: boolean | null;
show_email?: boolean | null;
show_location?: boolean | null;
show_real_name?: boolean | null;
timezone?: string | null;
visibility?: null | ProfileVisibility;
website?: string | null;
}
export interface UpsertMemeCmd {
content_type: string;
height?: number | null;
name: string;
size: number;
url: string;
width?: number | null;
}
export interface SaveMessageCmd {
channel_id: string;
message_id: string;
}
export interface MarkNotificationsReadCmd {
all?: boolean;
ids?: string[] | null;
}
export type Audience = 'Everyone' | 'FollowingOnly' | 'Nobody';
export interface UpdatePreferencesCmd {
allow_dms_from?: null | Audience;
allow_mentions_from?: null | Audience;
board_view_mode?: string | null;
diff_view_style?: string | null;
email_digest?: boolean | null;
email_flags?: number | null;
in_app_flags?: number | null;
/**
* 三态:缺省不动、`null` 清除、给值设置(与 `lib/webapi/src/openapi.rs`
* 声明的 PATCH 语义一致)。
*/
mute_until?: string | null;
push_flags?: number | null;
show_online_status?: boolean | null;
theme_mode?: string | null;
}
export type PushSubscriptionPlatform = 'WebPush' | 'AndroidFcm' | 'IosApns';
export interface UpsertPushCmd {
auth_key: string;
endpoint: string;
p256dh_key: string;
platform: PushSubscriptionPlatform;
user_agent?: string | null;
}
export interface CreateReportCmd {
evidence?: string | null;
reason: string;
reported_id: number;
}
export interface UpdateUsernameCmd {
username: string;
}
export interface CallerSignatureBody {
when?: string | null;
}
export type AllowJoinLevel =
| 'None'
| 'NeedMailActive'
| 'NeedMailActiveAndLastOneMid'
| 'NeedMailActiveAndLastOneHours'
| 'NeedMailActiveAndPhoneActive';
export interface CreateSpaceCmd {
allow_invite?: boolean;
allow_join?: boolean;
allow_join_level?: null | AllowJoinLevel;
avatar_url?: string | null;
description?: string | null;
is_private?: boolean;
member_must_enable_2fa?: boolean;
name: string;
welcome_message?: string | null;
welcome_object?: string | null;
}
export interface AcceptInviteCmd {
code: string;
}
export interface CreateTopicCmd {
name: string;
}
export interface AppResponseData_RecoveryCodesResp {
code: number;
data?: {
codes: string[];
total: number;
used: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TotpSetupResp {
code: number;
data?: {
otpauth_uri: string;
secret: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TotpStatusResp {
code: number;
data?: {
enabled: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_AgreementDoc {
code: number;
data?: Array<{
content_md: string;
key: string;
title: string;
version: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_DraftDto {
code: number;
data?: {
items: Array<{
content: string;
room_id: string;
thread_id?: string | null;
updated_at: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_NoData {
code: number;
data?: null;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ReminderStatus = 'Pending' | 'Done' | 'Cancelled' | 'Delivering';
export interface AppResponseData_Vec_ReminderDto {
code: number;
data?: Array<{
created_at: string;
id: string;
message_id: string;
message_preview?: string | null;
note?: string | null;
remind_at: string;
room_id: string;
status: ReminderStatus;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceConfigDto {
code: number;
data?: {
enabled: boolean;
recording_enabled: boolean;
url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface ProfileDto {
bio?: string | null;
company?: string | null;
date_of_birth?: string | null;
location?: string | null;
privacy_agreed_at?: string | null;
pronouns?: string | null;
real_name?: string | null;
show_activity: boolean;
show_email: boolean;
show_location: boolean;
show_real_name: boolean;
website?: string | null;
}
export interface UserMeDto {
avatar_url: string;
bot: boolean;
created_at: string;
display_name: string;
is_active: boolean;
is_restricted: boolean;
language?: string | null;
locale?: string | null;
prohibit_login: boolean;
system: boolean;
timezone?: string | null;
user_id: number;
username: string;
visibility: ProfileVisibility;
}
export interface AppResponseData_MeResp {
code: number;
data?: {
profile?: null | ProfileDto;
user: UserMeDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type AvatarFormat = 'jpg' | 'png' | 'webp' | 'gif';
export interface AppResponseData_Option_AvatarDto {
code: number;
data?: null | {
/**
* Size of the uploaded original in bytes.
*/
bytes: number;
/**
* Format of the uploaded original.
*/
format: AvatarFormat;
updated_at: string;
/**
* Browser-facing URL. Points at the compressed derivative when one exists,
* and at the uploaded bytes otherwise.
*/
url: string;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_UnreadCountResp {
code: number;
data?: {
count: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_UserPreferencesDto {
code: number;
data?: {
allow_dms_from: Audience;
allow_mentions_from: Audience;
/**
* Default view for the 问题集 page: `board` or `list`.
*/
board_view_mode: string;
diff_view_style?: string | null;
email_digest: boolean;
email_flags: number;
in_app_flags: number;
mute_until?: string | null;
push_flags: number;
show_online_status: boolean;
theme_mode: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_CountResp {
code: number;
data?: {
count: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PushConfigDto {
code: number;
/**
* 前端注册 Service Worker 所需的公开参数。
* 只有公钥是公开的(它就是浏览器 `applicationServerKey` 要的东西),私钥永远
* 不出现在任何响应里。`enabled=false` 时前端把整个"系统通知"开关藏起来,
* 而不是让用户点了才发现服务端没开。
*/
data?: {
enabled: boolean;
public_key: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ImageVariant = 'preview' | 'original';
export type IssueState = 'open' | 'closed';
export type IssueMemberKind = 'assignee' | 'mentioned' | 'participant';
export type DiffView = 'shortstat' | 'numstat' | 'files' | 'tree';
export type TreeView = 'entries' | 'last_updated';
export type WatchMode = 'unwatched' | 'watching' | 'ignore';
export type SpaceJoinRequestStatus = 'pending' | 'approved' | 'rejected' | 'withdrawn';
export interface FinalizeAttachmentCmd {
duration_secs?: number | null;
height?: number | null;
width?: number | null;
}
export interface OpenDmCmd {
peer_user_id?: number | null;
peer_user_ids?: number[] | null;
}
export interface WebhookPostCmd {
content?: string;
nonce?: string | null;
thread_id?: string | null;
}
export interface UpdateReminderCmd {
note?: string | null;
remind_at?: string | null;
}
export interface UpdateRoomCmd {
is_private?: boolean | null;
name?: string | null;
nsfw?: boolean | null;
/**
* Move the room under another directory node of the same space; `null` puts
* it back at the space root. Absent means "leave the parent alone".
*/
parent_id?: string | null;
position?: number | null;
rate_limit_per_user?: number | null;
topic?: string | null;
}
export interface BanRoomMemberCmd {
expires_at?: string | null;
reason?: string | null;
user_id: number;
}
export interface CreateBookmarkCmd {
emoji?: string | null;
title: string;
url?: string | null;
}
export interface UpdateBookmarkCmd {
emoji?: string | null;
position?: number | null;
title?: string | null;
url?: string | null;
}
export interface UpsertDraftCmd {
content: string;
thread_id?: string | null;
}
export interface CreateRoomInviteCmd {
expires_secs?: number | null;
invitee_id?: number | null;
}
export interface AddMembersCmd {
user_ids: number[];
}
export type RoomMemberRole = 'member' | 'moderator' | 'admin' | 'owner';
export interface UpdateRoomMemberCmd {
nick?: string | null;
role?: null | RoomMemberRole;
}
export interface SendMessageCmd {
attachments?: string[];
content?: string;
forwarded_from?: string | null;
/**
* client-generated idempotency key, unique per room; retrying with the
* same nonce returns the original message instead of duplicating
*/
nonce?: string | null;
reply_to_id?: string | null;
thread_broadcast?: boolean;
thread_id?: string | null;
urgent?: boolean;
}
export interface BulkDeleteCmd {
message_ids: string[];
}
export interface UpdateMessageCmd {
content: string;
}
export interface ForwardMessageCmd {
comment?: string | null;
target_room_id: string;
}
export interface PinCmd {
pinned: boolean;
}
export interface ReactionCmd {
emoji: string;
}
export interface CreateReminderCmd {
note?: string | null;
remind_at: string;
}
export interface CreateThreadCmd {
name?: string | null;
}
export interface CreateOutboundWebhookCmd {
name: string;
url: string;
}
export interface UpdateOutboundWebhookCmd {
disabled?: boolean | null;
name?: string | null;
url?: string | null;
}
export interface TransferOwnerCmd {
user_id: number;
}
export interface MarkReadCmd {
message_id?: string | null;
seq?: number | null;
}
export type RoomNotificationLevel = 'Default' | 'All' | 'Mentions' | 'Nothing';
export interface UpdateRoomSettingCmd {
favorite?: boolean | null;
hidden?: boolean | null;
mute_minutes?: number | null;
muted?: boolean | null;
notification_level?: null | RoomNotificationLevel;
}
export interface VoiceTileDto {
/**
* 归一化高度,和 `w` 一样按画布的可用宽高分别归一,因此窗口可以自由
* 拉伸而不是只能等比缩放。旧记录没有这个字段,读出来是 `None`,客户端
* 按宽度的 3/4 补一个经典比例。
*/
h?: number | null;
/**
* 服务端写入时刻(秒)。请求里被忽略,响应里供客户端判断“谁更新”,
* 这样并发拖拽时一个迟到的 GET 不会把刚摆好的窗口拽回旧位置。
*/
updated_at?: number;
/**
* 归一化宽度。
*/
w: number;
x: number;
y: number;
}
export interface VoiceLayoutPatchDto {
/**
* 需要收回自动网格的窗口 key。
*/
removed?: string[];
/**
* 需要新增或覆盖的窗口(key = 参与者用户 id)。
*/
tiles?: Record<string, VoiceTileDto>;
}
export interface CreateWebhookCmd {
name: string;
}
export interface UpdateWebhookCmd {
disabled?: boolean | null;
name?: string | null;
}
export interface UploadEmojiCmd {
animated?: boolean;
content_type: string;
data_base64: string;
name: string;
}
export type RoomKind =
'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage';
export interface CreateRoomCmd {
is_private?: boolean;
kind?: RoomKind;
name: string;
nsfw?: boolean;
parent_id?: string | null;
rate_limit_per_user?: number | null;
topic?: string | null;
user_limit?: number | null;
}
export interface UpdateThreadCmd {
archived?: boolean | null;
locked?: boolean | null;
name?: string | null;
}
export type ThreadNotifyLevel = 'None' | 'All';
export interface ThreadMemberCmd {
notify_level?: null | ThreadNotifyLevel;
}
export interface MarkThreadReadCmd {
message_id?: string | null;
}
export interface CreateBoardCmd {
description?: string | null;
icon?: string | null;
name: string;
parent_dir_id?: string | null;
prefix?: string | null;
}
export interface UpdateBoardCmd {
description?: string | null;
icon?: string | null;
name?: string | null;
prefix?: string | null;
}
export type IssuePriority = 'none' | 'low' | 'medium' | 'high' | 'urgent';
export interface CreateIssueCmd {
assignee_ids?: number[];
/**
* Draft uploads (`POST /issues/attachments`) to link to the new issue.
*/
attachment_ids?: string[];
content?: string;
description?: string | null;
due_at?: string | null;
label_ids?: string[];
milestone_id?: string | null;
priority?: IssuePriority;
title: string;
}
export type BulkAction = 'close' | 'reopen';
export interface BulkIssuesCmd {
action: BulkAction;
issue_refs: string[];
}
export interface UpdateIssueCmd {
assignee_ids?: number[] | null;
content?: string | null;
description?: string | null;
due_at?: string | null;
label_ids?: string[] | null;
milestone_id?: string | null;
priority?: null | IssuePriority;
title?: string | null;
}
export interface CreateCommentCmd {
content: string;
parent_id?: string | null;
}
export interface UpdateCommentCmd {
content: string;
}
export interface CreateReactionCmd {
emoji: string;
}
export interface CreateDependencyCmd {
dependency_id: string;
}
export interface CreateIssueMemberCmd {
kind: IssueMemberKind;
user_id: number;
}
export interface LinkIssueCmd {
/**
* PR 编号或 UUID。
*/
pull_ref: string;
repo_name: string;
space_name: string;
}
export interface MarkIssueReadCmd {
read: boolean;
}
export interface CreateRepoRelCmd {
repo_id: string;
}
export interface CreateTrackedTimeCmd {
seconds: number;
}
export interface UpdateTrackedTimeCmd {
seconds: number;
}
export interface UpsertWatchCmd {
mode: WatchMode;
}
export interface CreateLabelCmd {
color: string;
description?: string | null;
exclusive?: boolean | null;
exclusive_order?: number | null;
name: string;
}
export interface UpdateLabelCmd {
color?: string | null;
description?: string | null;
exclusive?: boolean | null;
exclusive_order?: number | null;
is_archived?: boolean | null;
name?: string | null;
}
export interface CreateMilestoneCmd {
description?: string | null;
due_at?: string | null;
name: string;
}
export interface UpdateMilestoneCmd {
description?: string | null;
due_at?: string | null;
is_closed?: boolean | null;
name?: string | null;
}
export interface CreatePinCmd {
issue_id: string;
pin_order: number;
}
export interface UpdatePinCmd {
pin_order: number;
}
export interface AcceptAgreementCmd {
version: string;
}
export interface CreateRepoCmd {
default_branch?: string | null;
description?: string | null;
enable_lfs?: boolean;
init_message?: string | null;
is_private?: boolean;
license_name?: string | null;
name: string;
parent_dir_id?: string | null;
}
export interface UpdateRepoCmd {
allow_pull_requests?: boolean | null;
default_branch?: string | null;
description?: string | null;
enable_lfs?: boolean | null;
is_private?: boolean | null;
/**
* 中间页签顺序;传空数组恢复默认顺序。
*/
tab_order?: string[] | null;
website?: string | null;
}
export type ArchiveFormatDto = 'tar' | 'tar_gz' | 'tar_bz2' | 'zip';
export interface ArchiveCreateCmd {
format: ArchiveFormatDto;
path_filter?: string | null;
revision: string;
}
export interface CreateBranchPolicyCmd {
block_on_change_requested_reviews?: boolean | null;
block_on_outdated_branch?: boolean | null;
block_on_rejected_reviews?: boolean | null;
branch_pattern: string;
dismiss_stale_approvals?: boolean | null;
enable_approvals_whitelist?: boolean | null;
enable_force_push?: boolean | null;
enable_merge_whitelist?: boolean | null;
enable_push?: boolean | null;
enable_push_whitelist?: boolean | null;
protected_file_patterns?: string | null;
require_signed_commits?: boolean | null;
required_approvals?: number | null;
required_status_contexts?: string | null;
unprotected_file_patterns?: string | null;
}
export interface UpdateBranchPolicyCmd {
block_on_change_requested_reviews?: boolean | null;
block_on_outdated_branch?: boolean | null;
block_on_rejected_reviews?: boolean | null;
branch_pattern?: string | null;
dismiss_stale_approvals?: boolean | null;
enable_approvals_whitelist?: boolean | null;
enable_force_push?: boolean | null;
enable_merge_whitelist?: boolean | null;
enable_push?: boolean | null;
enable_push_whitelist?: boolean | null;
protected_file_patterns?: string | null;
require_signed_commits?: boolean | null;
required_approvals?: number | null;
required_status_contexts?: string | null;
unprotected_file_patterns?: string | null;
}
export type WhitelistKind = 'Push' | 'Merge' | 'Approval';
export interface AddBranchWhitelistCmd {
group_id?: string | null;
kind: WhitelistKind;
user_id?: number | null;
}
export interface CreateBranchCmd {
name: string;
start_point?: string | null;
}
export interface RenameBranchCmd {
new_name: string;
}
export interface CreateCodeCommentCmd {
body: string;
/**
* 锚定的提交;缺省使用该 revision 解析出的提交。
*/
commit_sha?: string | null;
line: number;
parent_id?: string | null;
path: string;
revision?: string | null;
}
export interface UpdateCodeCommentCmd {
body: string;
}
export type CommitStatusDtoState = 'pending' | 'success' | 'failure' | 'error';
export interface SetCommitStatusCmd {
context: string;
description?: string | null;
sha: string;
state: CommitStatusDtoState;
target_url?: string | null;
}
export interface HookExecBody {
args?: string[];
}
export interface LfsLockBody {
oid?: string | null;
path: string;
}
export interface CreatePullCmd {
base_branch?: string | null;
body?: string | null;
draft?: boolean | null;
head_branch: string;
issue_id?: string | null;
title: string;
}
export interface UpdatePullCmd {
auto_merge?: boolean | null;
base_branch?: string | null;
body?: string | null;
draft?: boolean | null;
issue_id?: string | null;
title?: string | null;
}
export interface CreatePullCommentCmd {
body: string;
commit_sha?: string | null;
line?: number | null;
parent_comment_id?: string | null;
/**
* 行内评论需要 path;缺省则为普通讨论评论。
*/
path?: string | null;
review_id?: string | null;
/**
* left | right
*/
side?: string | null;
}
export interface UpdatePullCommentCmd {
body: string;
}
export interface AttachLabelCmd {
/**
* 标签 UUID 或名称(同一仓库目录内的标签)。
*/
label: string;
}
export type MergeMethod = 'merge' | 'squash' | 'rebase';
export interface MergePullCmd {
delete_branch_after_merge?: boolean | null;
expect_head_sha?: string | null;
/**
* 允许在无冲突时直接快进(method=merge 时生效)。
*/
fast_forward_only?: boolean | null;
message?: string | null;
method?: null | MergeMethod;
title?: string | null;
}
export interface RequestReviewersCmd {
/**
* 是否计入必需审批人数。
*/
required?: boolean;
/**
* 用户名或 UUID。
*/
reviewers: string[];
}
export interface InlineDraft {
body?: string | null;
line: number;
path: string;
side?: string | null;
}
export type ReviewIntent = 'approve' | 'request_changes' | 'comment' | 'pending';
export interface SubmitReviewCmd {
body?: string | null;
comments?: InlineDraft[];
state: ReviewIntent;
}
export interface CreateReleaseCmd {
content?: string | null;
is_draft?: boolean | null;
is_prerelease?: boolean | null;
tag_name: string;
target?: string | null;
title?: string | null;
}
export interface UpdateReleaseCmd {
content?: string | null;
is_draft?: boolean | null;
is_prerelease?: boolean | null;
title?: string | null;
}
export interface RemoteAuthDto {
token?: string | null;
username?: string | null;
}
export interface RemoteFetchBody {
auth?: null | RemoteAuthDto;
remote: string;
}
export interface RemoteImportBody {
auth?: null | RemoteAuthDto;
url: string;
}
export interface RemotePushBody {
auth?: null | RemoteAuthDto;
refspec?: string | null;
remote: string;
}
export interface RemoteAddBody {
url: string;
}
export interface CreateTagPolicyCmd {
name_pattern: string;
}
export interface UpdateTagPolicyCmd {
name_pattern?: string | null;
}
export interface AddTagWhitelistCmd {
user_id: number;
}
export interface CreateTagCmd {
annotated?: boolean;
message?: string | null;
name: string;
target: string;
}
export interface UpdateSpaceCmd {
allow_invite?: boolean | null;
allow_join?: boolean | null;
allow_join_level?: null | AllowJoinLevel;
description?: string | null;
is_private?: boolean | null;
member_must_enable_2fa?: boolean | null;
name?: string | null;
welcome_message?: string | null;
welcome_object?: string | null;
}
export interface BanUserCmd {
allow_comment_any?: boolean | null;
allow_push_repo?: boolean | null;
allow_speak?: boolean | null;
expires_at?: string | null;
reason?: string | null;
user_id: number;
}
export interface UpdateBanCmd {
allow_comment_any?: boolean | null;
allow_push_repo?: boolean | null;
allow_speak?: boolean | null;
expires_at?: string | null;
reason?: string | null;
}
export interface SetRepoArchivedCmd {
archived: boolean;
}
export interface SetCleanupVisibilityCmd {
is_private: boolean;
}
export interface CreateDirCmd {
name: string;
parent_dir_id?: string | null;
position?: number | null;
}
export interface UpdateDirCmd {
name: string;
}
export interface SetOverwriteCmd {
allow_mask: number;
deny_mask: number;
}
export interface MoveDirCmd {
parent_dir_id?: string | null;
position?: number | null;
}
export interface CreateGroupCmd {
color?: string | null;
icon_hash?: string | null;
name: string;
permissions?: string[];
position?: number | null;
unicode_emoji?: string | null;
}
export interface UpdateGroupCmd {
color?: string | null;
icon_hash?: string | null;
name?: string | null;
permissions?: string[] | null;
position?: number | null;
unicode_emoji?: string | null;
}
export interface CreateInviteCmd {
email?: string | null;
expires_at?: string | null;
group_ids?: string[];
user_id?: number | null;
}
export interface CreateJoinRequestCmd {
note?: string | null;
}
export type SpaceJoinTrigger = 'issue_reaction' | 'issue_comment_reaction';
export interface CreateJoinRuleCmd {
group_id: string;
matcher?: string;
trigger?: SpaceJoinTrigger;
}
export interface UpdateJoinRuleCmd {
enabled?: boolean | null;
matcher?: string | null;
}
export type MessageNotifications = 'All' | 'Mentions' | 'Nothing';
export interface AddMemberCmd {
alias_avatar_url?: string | null;
alias_name?: string | null;
hide_muted_channels?: boolean | null;
message_notifications?: null | MessageNotifications;
mobile_push?: boolean | null;
mute_until?: string | null;
muted?: boolean | null;
suppress_everyone?: boolean | null;
suppress_roles?: boolean | null;
user_id: number;
}
export interface UpdateMemberCmd {
alias_avatar_url?: string | null;
alias_name?: string | null;
hide_muted_channels?: boolean | null;
message_notifications?: null | MessageNotifications;
mobile_push?: boolean | null;
mute_until?: string | null;
muted?: boolean | null;
suppress_everyone?: boolean | null;
suppress_roles?: boolean | null;
}
export interface AssignGroupCmd {
group_id: string;
}
export interface AppResponseData_Page_AccessKeyDto {
code: number;
data?: {
items: Array<{
created_at: string;
expires_at?: string | null;
id: string;
last_used_at?: string | null;
name: string;
scope: AccessKeyScope;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AccessKeyDto {
created_at: string;
expires_at?: string | null;
id: string;
last_used_at?: string | null;
name: string;
scope: AccessKeyScope;
}
export interface AppResponseData_CreateAccessKeyResp {
code: number;
data?: {
key: AccessKeyDto;
token: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_JwtRequestResp {
code: number;
data?: {
expires_in_secs: number;
jwt: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type SshKeyType = 'ssh_rsa' | 'ssh_ed25519' | 'ecdsa_sha2_nistp256';
export interface AppResponseData_Page_SshKeyDto {
code: number;
data?: {
items: Array<{
created_at: string;
fingerprint: string;
id: string;
key_type: SshKeyType;
name: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_SshKeyDto {
code: number;
data?: {
created_at: string;
fingerprint: string;
id: string;
key_type: SshKeyType;
name: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_UploadIntentDto {
code: number;
data?: {
expires_secs: number;
id: string;
upload_url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type AttachmentStatus = 'Pending' | 'Uploaded';
export interface AppResponseData_AttachmentDto {
code: number;
data?: {
content_type: string;
created_at: string;
description?: string | null;
duration_secs?: number | null;
filename: string;
height?: number | null;
id: string;
message_id?: string | null;
room_id?: string | null;
size: number;
status: AttachmentStatus;
user_id: number;
width?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface UserDto {
avatar_url: string;
display_name: string;
user_id: number;
username: string;
}
export interface AppResponseData_Page_DmDto {
code: number;
data?: {
items: Array<{
created_at: string;
id: string;
kind: RoomKind;
last_message_id?: string | null;
last_read_seq: number;
members?: UserDto[];
name: string;
peer?: null | UserDto;
tip_seq: number;
unread_count: number;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomBriefDto {
code: number;
data?: {
created_at: string;
favorite: boolean;
hidden: boolean;
id: string;
is_private: boolean;
kind: RoomKind;
last_message_id?: string | null;
member_count: number;
muted: boolean;
name: string;
nsfw: boolean;
owner?: null | UserDto;
owner_id: number;
parent_id?: string | null;
position: number;
rate_limit_per_user?: number | null;
space_id?: string | null;
topic?: string | null;
unread_count: number;
unread_mentions: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PresenceDto {
code: number;
data?: {
activities: null;
last_seen_at?: string | null;
online: boolean;
status: PresenceStatus;
user?: null | UserDto;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RoomInviteListItemDto {
code: number;
data?: Array<{
accepted_at?: string | null;
created_at: string;
expires_at?: string | null;
id: string;
invitee?: null | UserDto;
invitee_id?: number | null;
inviter?: null | UserDto;
inviter_id: number;
revoked_at?: string | null;
room_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomMemberDto {
code: number;
data?: {
joined_at: string;
nick?: string | null;
role: RoomMemberRole;
user: UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AttachmentDto {
content_type: string;
created_at: string;
description?: string | null;
duration_secs?: number | null;
filename: string;
height?: number | null;
id: string;
message_id?: string | null;
room_id?: string | null;
size: number;
status: AttachmentStatus;
user_id: number;
width?: number | null;
}
export type AuthorType = 'User' | 'Bot' | 'Webhook';
export interface MessageEmbedDto {
aspect?: string | null;
category?: string | null;
description?: string | null;
/**
* 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
*/
height?: number | null;
html?: string | null;
image_url?: string | null;
kind?: string | null;
platform?: string | null;
platform_name?: string | null;
site_name?: string | null;
src?: string | null;
title?: string | null;
type: string;
url: string;
}
export type ChatMessageType =
| 'Default'
| 'Reply'
| 'ThreadCreated'
| 'ChannelJoin'
| 'ChannelLeave'
| 'ChannelTopic'
| 'ChannelPinnedItem'
| 'Reminder'
| 'System';
export interface ReactionAggDto {
count: number;
emoji: string;
me: boolean;
}
export interface AppResponseData_MessageDto {
code: number;
data?: {
attachments: AttachmentDto[];
author?: null | UserDto;
author_id: number;
author_type: AuthorType;
content: string;
created_at: string;
deleted_at?: string | null;
edited_at?: string | null;
embeds?: MessageEmbedDto[];
forwarded_from_id?: string | null;
has_thread: boolean;
id: string;
mention_everyone: boolean;
mentions: number[];
message_type: ChatMessageType;
pinned: boolean;
pinned_at?: string | null;
pinned_by_id?: number | null;
reactions?: ReactionAggDto[];
reply_to_id?: string | null;
room_id: string;
seq: number;
thread_broadcast: boolean;
thread_id?: string | null;
webhook_id?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_MessageEditDto {
code: number;
data?: Array<{
content: string;
created_at: string;
editor?: null | UserDto;
id: string;
message_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_ReactionUserDto {
code: number;
data?: Array<{
created_at: string;
emoji: string;
user: UserDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_OutboundWebhookDto {
code: number;
data?: Array<{
created_at: string;
disabled: boolean;
id: string;
last_status?: string | null;
last_used_at?: string | null;
name: string;
room_id: string;
url: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_MessageDto {
code: number;
data?: {
items: Array<{
attachments: AttachmentDto[];
author?: null | UserDto;
author_id: number;
author_type: AuthorType;
content: string;
created_at: string;
deleted_at?: string | null;
edited_at?: string | null;
embeds?: MessageEmbedDto[];
forwarded_from_id?: string | null;
has_thread: boolean;
id: string;
mention_everyone: boolean;
mentions: number[];
message_type: ChatMessageType;
pinned: boolean;
pinned_at?: string | null;
pinned_by_id?: number | null;
reactions?: ReactionAggDto[];
reply_to_id?: string | null;
room_id: string;
seq: number;
thread_broadcast: boolean;
thread_id?: string | null;
webhook_id?: string | null;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ReadStateDto {
code: number;
data?: {
last_read_message_id?: string | null;
last_read_seq: number;
last_viewed_at?: string | null;
room_id: string;
tip_seq: number;
unread_count: number;
unread_mentions: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomSettingDto {
code: number;
data?: {
favorite: boolean;
hidden: boolean;
mute_until?: string | null;
muted: boolean;
notification_level: RoomNotificationLevel;
room_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type HandState = 'pending' | 'approved' | 'denied' | 'revoked';
export interface HandDto {
avatar_url?: string | null;
display_name: string;
requested_at: number;
/**
* 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
*/
state: HandState;
user_id: number;
}
export interface AppResponseData_VoiceHandsDto {
code: number;
data?: {
can_moderate: boolean;
hands: HandDto[];
my_state?: null | HandState;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_HandDto {
code: number;
data?: {
avatar_url?: string | null;
display_name: string;
requested_at: number;
/**
* 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
*/
state: HandState;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceModerationDto {
code: number;
data?: {
action: string;
ok: boolean;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceLayoutDto {
code: number;
data?: {
/**
* key 为参与者用户 id。
*/
tiles?: Record<string, VoiceTileDto>;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface VoiceTrackDto {
kind: string;
muted: boolean;
sid: string;
source: string;
}
export interface AppResponseData_Vec_VoiceParticipantDto {
code: number;
data?: Array<{
avatar_url?: string | null;
can_publish: boolean;
display_name: string;
joined_at: number;
moderator_muted: boolean;
/**
* 快照值:list_participants 不返回发言状态,因此这里恒为 false;
* 实时发言指示由前端从 Room 的 activeSpeakers 读取。
*/
speaking: boolean;
tracks: VoiceTrackDto[];
user_id: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceRecordingDto {
code: number;
data?: {
active: boolean;
egress_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceTokenDto {
code: number;
data?: {
can_publish: boolean;
expires_in_secs: number;
hand_state?: null | HandState;
is_stage: boolean;
room_name: string;
token: string;
url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_EmojiDto {
code: number;
data?: {
items: Array<{
animated: boolean;
created_at: string;
disabled: boolean;
id: string;
name: string;
space_id: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_EmojiDto {
code: number;
data?: {
animated: boolean;
created_at: string;
disabled: boolean;
id: string;
name: string;
space_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_PresenceDto {
code: number;
data?: Array<{
activities: null;
last_seen_at?: string | null;
online: boolean;
status: PresenceStatus;
user?: null | UserDto;
user_id: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface ReadStateDto {
last_read_message_id?: string | null;
last_read_seq: number;
last_viewed_at?: string | null;
room_id: string;
tip_seq: number;
unread_count: number;
unread_mentions: number;
}
export interface AppResponseData_SpaceReadStatePage {
code: number;
data?: {
items: ReadStateDto[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RoomBriefDto {
code: number;
data?: Array<{
created_at: string;
favorite: boolean;
hidden: boolean;
id: string;
is_private: boolean;
kind: RoomKind;
last_message_id?: string | null;
member_count: number;
muted: boolean;
name: string;
nsfw: boolean;
owner?: null | UserDto;
owner_id: number;
parent_id?: string | null;
position: number;
rate_limit_per_user?: number | null;
space_id?: string | null;
topic?: string | null;
unread_count: number;
unread_mentions: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface VoiceRoomStateDto {
count: number;
room_id: string;
}
export interface AppResponseData_VoiceSpaceStatesDto {
code: number;
data?: {
rooms: VoiceRoomStateDto[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_ThreadDto {
code: number;
data?: {
items: Array<{
archived: boolean;
created_at: string;
id: string;
last_reply_at?: string | null;
last_reply_id?: string | null;
locked: boolean;
name?: string | null;
owner?: null | UserDto;
owner_id: number;
participant_count: number;
reply_count: number;
room_id: string;
root_message_id: string;
updated_at: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ThreadDto {
code: number;
data?: {
archived: boolean;
created_at: string;
id: string;
last_reply_at?: string | null;
last_reply_id?: string | null;
locked: boolean;
name?: string | null;
owner?: null | UserDto;
owner_id: number;
participant_count: number;
reply_count: number;
room_id: string;
root_message_id: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_IssueUploadIntentDto {
code: number;
data?: {
expires_secs: number;
id: string;
upload_url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type IssueAttachmentStatus = 'pending' | 'uploaded';
export interface AppResponseData_IssueAttachmentDto {
code: number;
data?: {
content_type: string;
created_at: string;
filename: string;
id: string;
/**
* `None` until the draft is submitted with this attachment attached.
*/
issue_id?: string | null;
size: number;
/**
* Upload lifecycle: a row is created before the bytes exist (`Pending`) and
* only an `Uploaded` row may be referenced by an issue.
*/
status: IssueAttachmentStatus;
uploader_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BoardDto {
code: number;
data?: {
closed_issues_count: number;
created_at: string;
description?: string | null;
dir_id: string;
icon?: string | null;
id: string;
name: string;
open_issues_count: number;
/**
* Number prefix for the board's issues (`CAD` renders as `CAD-12`).
*/
prefix?: string | null;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_IssueDto {
code: number;
data?: {
assignees: UserDto[];
author?: null | UserDto;
board_id: string;
closed_at?: string | null;
content: string;
created_at: string;
description?: string | null;
due_at?: string | null;
id: string;
milestone_id?: string | null;
number: number;
priority: IssuePriority;
state: IssueState;
title: string;
updated_at?: string | null;
viewer_watch?: null | WatchMode;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_IssueAttachmentDto {
code: number;
data?: Array<{
content_type: string;
created_at: string;
filename: string;
id: string;
/**
* `None` until the draft is submitted with this attachment attached.
*/
issue_id?: string | null;
size: number;
/**
* Upload lifecycle: a row is created before the bytes exist (`Pending`) and
* only an `Uploaded` row may be referenced by an issue.
*/
status: IssueAttachmentStatus;
uploader_id: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface CommentDto {
content: string;
created_at: string;
id: string;
issue_id?: string | null;
parent_id?: string | null;
poster?: null | UserDto;
updated_at?: string | null;
}
export interface CommentTreeNode {
comment: CommentDto;
replies: CommentTreeNode[];
}
export interface AppResponseData_Vec_CommentTreeNode {
code: number;
data?: Array<{
comment: CommentDto;
replies: CommentTreeNode[];
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_CommentDto {
code: number;
data?: {
content: string;
created_at: string;
id: string;
issue_id?: string | null;
parent_id?: string | null;
poster?: null | UserDto;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_ReactionAggDto {
code: number;
data?: Array<{
count: number;
emoji: string;
me: boolean;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_DependencyDto {
code: number;
data?: Array<{
created_at: string;
dependency_id: string;
id: string;
issue_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_LabelDto {
code: number;
data?: Array<{
color: string;
created_at: string;
description?: string | null;
dir_id: string;
exclusive: boolean;
exclusive_order: number;
id: string;
is_archived: boolean;
name: string;
updated_at?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface PullRefDto {
branch: string;
label: string;
repo_id?: string | null;
sha: string;
}
export type PullState = 'open' | 'closed' | 'merged';
export interface PullDto {
additions: number;
author?: null | UserDto;
auto_merge: boolean;
base: PullRefDto;
body: string;
closed_at?: string | null;
commits_ahead?: number | null;
commits_behind?: number | null;
conflicts?: string[] | null;
created_at: string;
deletions: number;
files_changed: number;
head: PullRefDto;
id: string;
is_draft: boolean;
issue_id?: string | null;
locked: boolean;
merge_method: MergeMethod;
mergeable?: boolean | null;
mergeable_state?: string | null;
merged_at?: string | null;
merged_commit_sha?: string | null;
merger?: null | UserDto;
number: number;
repo_id: string;
squash_commit_sha?: string | null;
state: PullState;
title: string;
updated_at?: string | null;
}
export interface AppResponseData_Vec_IssuePullLinkDto {
code: number;
data?: Array<{
/**
* 建立关联的时间。
*/
linked_at: string;
pull: PullDto;
/**
* 关联行主键(issue_relation_pull.id),解除关联时作为路径参数回传。
*/
relation_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RepoRelDto {
code: number;
data?: Array<{
created_at: string;
id: string;
issue_id: string;
repo_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_StopwatchDto {
code: number;
data?: {
created_at?: string | null;
id?: string | null;
issue_id: string;
running: boolean;
started_at?: string | null;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_LabelDto {
code: number;
data?: {
color: string;
created_at: string;
description?: string | null;
dir_id: string;
exclusive: boolean;
exclusive_order: number;
id: string;
is_archived: boolean;
name: string;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_MilestoneDto {
code: number;
data?: {
board_id: string;
closed_issues_count: number;
created_at: string;
description?: string | null;
due_at?: string | null;
id: string;
is_closed: boolean;
issues_count: number;
name: string;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_PinDto {
code: number;
data?: Array<{
board_id: string;
created_at: string;
id: string;
issue_id?: string | null;
pin_order: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_LicenseDto {
code: number;
data?: Array<{
body: string;
created_at: string;
description?: string | null;
display_name: string;
name: string;
updated_at: string;
url?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_LicenseDto {
code: number;
data?: {
body: string;
created_at: string;
description?: string | null;
display_name: string;
name: string;
updated_at: string;
url?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_AvatarDto {
code: number;
data?: {
/**
* Size of the uploaded original in bytes.
*/
bytes: number;
/**
* Format of the uploaded original.
*/
format: AvatarFormat;
updated_at: string;
/**
* Browser-facing URL. Points at the compressed derivative when one exists,
* and at the uploaded bytes otherwise.
*/
url: string;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_DeviceDto {
code: number;
data?: Array<{
device_name?: string | null;
device_type?: string | null;
first_seen_at: string;
id: string;
is_trusted: boolean;
last_seen_at: string;
os?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_MemeDto {
code: number;
data?: Array<{
content_type: string;
created_at: string;
height?: number | null;
id: string;
name: string;
size: number;
url: string;
width?: number | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_MemeDto {
code: number;
data?: {
content_type: string;
created_at: string;
height?: number | null;
id: string;
name: string;
size: number;
url: string;
width?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_SavedMessageDto {
code: number;
data?: Array<{
channel_id: string;
id: string;
message_id: string;
saved_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_SavedMessageDto {
code: number;
data?: {
channel_id: string;
id: string;
message_id: string;
saved_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type Value = null;
export interface AppResponseData_Page_NotificationDto {
code: number;
data?: {
items: Array<{
actor_id?: number | null;
body?: string | null;
created_at: string;
data?: null | Value;
id: string;
notification_type: NotificationType;
read_at?: string | null;
title: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_MarkedCountResp {
code: number;
data?: {
marked: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_PushSubscriptionDto {
code: number;
data?: Array<{
created_at: string;
endpoint: string;
id: string;
platform: PushSubscriptionPlatform;
updated_at?: string | null;
user_agent?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PushSubscriptionDto {
code: number;
data?: {
created_at: string;
endpoint: string;
id: string;
platform: PushSubscriptionPlatform;
updated_at?: string | null;
user_agent?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RecentMentionDto {
code: number;
data?: Array<{
channel_id: string;
created_at: string;
id: string;
message_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ReportStatus = 'open' | 'under_review' | 'resolved' | 'dismissed';
export interface AppResponseData_Vec_UserReportDto {
code: number;
data?: Array<{
created_at: string;
evidence?: string | null;
id: string;
reason: string;
reported_id: number;
resolution_note?: string | null;
status: ReportStatus;
updated_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ReportDto {
code: number;
data?: {
created_at: string;
evidence?: string | null;
id: string;
reason: string;
reported_id: number;
status: ReportStatus;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_SessionDto {
code: number;
data?: {
items: Array<{
client_ip_hash?: string | null;
created_at: string;
device_id?: string | null;
expires_at: string;
id: string;
is_current: boolean;
is_revoked: boolean;
kind: SessionKind;
last_seen_at: string;
revoked_at?: string | null;
user_agent_hash?: string | null;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface SpaceDto {
allow_invite: boolean;
allow_join: boolean;
allow_join_level: AllowJoinLevel;
avatar_url?: string | null;
created_at: string;
description?: string | null;
id: string;
is_active: boolean;
is_private: boolean;
lower_name: string;
member_must_enable_2fa: boolean;
members_count: number;
name: string;
owner?: null | UserDto;
updated_at: string;
welcome_message?: string | null;
welcome_object?: string | null;
}
export interface AppResponseData_Vec_MySpaceDto {
code: number;
data?: Array<{
permissions: string[];
space: SpaceDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type SuspensionType = 'temporary' | 'permanent';
export interface AppResponseData_Vec_SuspensionDto {
code: number;
data?: Array<{
created_at: string;
ends_at?: string | null;
id: string;
reason?: string | null;
revoked_at?: string | null;
starts_at: string;
suspension_type: SuspensionType;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_UserPublic {
code: number;
data?: {
avatar_url: string;
display_name: string;
user_id: number;
username: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_SignatureDto {
code: number;
data?: {
email: string;
name: string;
when: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ParsedPatchDto {
code: number;
data?: {
additions: number;
deletions: number;
files: string[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface RepoMeDto {
starred: boolean;
watch_mode?: null | WatchMode;
}
export interface AppResponseData_RepoDto {
code: number;
data?: {
/**
* 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
*/
allow_pull_requests: boolean;
archived_at?: string | null;
avatar_url?: string | null;
branches_count: number;
commits_count: number;
created_at: string;
default_branch: string;
description?: string | null;
enable_lfs: boolean;
git_size: number;
http_clone_url?: string | null;
id: string;
is_archived: boolean;
is_private: boolean;
last_pushed_at?: string | null;
lfs_size: number;
license_name?: string | null;
me?: null | RepoMeDto;
name: string;
object_format: string;
primary_language?: string | null;
pulls_count: number;
size: number;
ssh_clone_url?: string | null;
stars_count: number;
storage_limit_size?: number | null;
/**
* 中间页签顺序;空数组 = 默认顺序。
*/
tab_order: string[];
tags_count: number;
updated_at: string;
watchers_count: number;
website?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_ContributorStatDto {
code: number;
data?: Array<{
additions: number;
commits: number;
deletions: number;
email: string;
name: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_LanguageStatDto {
code: number;
data?: Array<{
is_primary: boolean;
language: string;
percentage_bp: number;
size: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ArchiveResultDto {
code: number;
data?: {
cache_key: string;
download_url?: string | null;
format: string;
size: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BlobContentDto {
code: number;
data?: {
data: number[];
is_binary: boolean;
oid: string;
size: number;
truncated: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface LfsPointerDto {
oid?: string | null;
size?: number | null;
version: string;
}
export interface AppResponseData_BlobMetaDto {
code: number;
data?: {
is_binary: boolean;
is_lfs_pointer: boolean;
lfs?: null | LfsPointerDto;
oid: string;
size: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_BranchPolicyDto {
code: number;
data?: Array<{
block_on_change_requested_reviews: boolean;
block_on_outdated_branch: boolean;
block_on_rejected_reviews: boolean;
branch_pattern: string;
created_at: string;
dismiss_stale_approvals: boolean;
enable_approvals_whitelist: boolean;
enable_force_push: boolean;
enable_merge_whitelist: boolean;
enable_push: boolean;
enable_push_whitelist: boolean;
id: string;
protected_file_patterns: string;
push_whitelist_deploy_keys: boolean;
repo_id: string;
require_signed_commits: boolean;
required_approvals: number;
required_status_contexts: string;
unprotected_file_patterns: string;
updated_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BranchPolicyDto {
code: number;
data?: {
block_on_change_requested_reviews: boolean;
block_on_outdated_branch: boolean;
block_on_rejected_reviews: boolean;
branch_pattern: string;
created_at: string;
dismiss_stale_approvals: boolean;
enable_approvals_whitelist: boolean;
enable_force_push: boolean;
enable_merge_whitelist: boolean;
enable_push: boolean;
enable_push_whitelist: boolean;
id: string;
protected_file_patterns: string;
push_whitelist_deploy_keys: boolean;
repo_id: string;
require_signed_commits: boolean;
required_approvals: number;
required_status_contexts: string;
unprotected_file_patterns: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_BranchWhitelistDto {
code: number;
data?: Array<{
created_at: string;
group_id?: string | null;
id: string;
kind: WhitelistKind;
policy_id: string;
user?: null | UserDto;
user_id?: number | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BranchDto {
code: number;
data?: {
commit_sha: string;
created_at: string;
deleted_at?: string | null;
is_deleted: boolean;
is_protected: boolean;
name: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_CodeCommentDto {
code: number;
data?: {
author?: null | UserDto;
body: string;
commit_sha: string;
created_at: string;
id: string;
line: number;
/**
* 该评论锚定的提交是否仍是当前分支提示(否则视为 outdated)。
*/
outdated: boolean;
parent_id?: string | null;
path: string;
repo_id: string;
resolved: boolean;
resolved_by?: number | null;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_CommitStatusDto {
code: number;
data?: Array<{
context: string;
created_at: string;
creator?: null | UserDto;
creator_id: number;
description?: string | null;
state: CommitStatusDtoState;
target_url?: string | null;
updated_at?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PullDto {
code: number;
data?: {
additions: number;
author?: null | UserDto;
auto_merge: boolean;
base: PullRefDto;
body: string;
closed_at?: string | null;
commits_ahead?: number | null;
commits_behind?: number | null;
conflicts?: string[] | null;
created_at: string;
deletions: number;
files_changed: number;
head: PullRefDto;
id: string;
is_draft: boolean;
issue_id?: string | null;
locked: boolean;
merge_method: MergeMethod;
mergeable?: boolean | null;
mergeable_state?: string | null;
merged_at?: string | null;
merged_commit_sha?: string | null;
merger?: null | UserDto;
number: number;
repo_id: string;
squash_commit_sha?: string | null;
state: PullState;
title: string;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_PullAssigneeDto {
code: number;
data?: Array<{
created_at: string;
id: string;
user?: null | UserDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface CommitStatusDto {
context: string;
created_at: string;
creator?: null | UserDto;
creator_id: number;
description?: string | null;
state: CommitStatusDtoState;
target_url?: string | null;
updated_at?: string | null;
}
export interface AppResponseData_PullChecksDto {
code: number;
data?: {
head_sha: string;
statuses: CommitStatusDto[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface PullCommentDto {
author?: null | UserDto;
body: string;
commit_sha?: string | null;
created_at: string;
id: string;
line?: number | null;
parent_comment_id?: string | null;
path?: string | null;
pull_request_id: string;
resolved: boolean;
resolved_by?: number | null;
review_id?: string | null;
side?: string | null;
updated_at?: string | null;
}
export interface AppResponseData_Vec_PullCommentThreadDto {
code: number;
data?: Array<{
replies: PullCommentDto[];
root: PullCommentDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PullCommentDto {
code: number;
data?: {
author?: null | UserDto;
body: string;
commit_sha?: string | null;
created_at: string;
id: string;
line?: number | null;
parent_comment_id?: string | null;
path?: string | null;
pull_request_id: string;
resolved: boolean;
resolved_by?: number | null;
review_id?: string | null;
side?: string | null;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_MergeCommitDto {
code: number;
data?: Array<{
author_at: string;
author_email: string;
author_name: string;
message: string;
parents: string[];
sha: string;
subject: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface ChangedPathDto {
new_mode: number;
new_oid?: string | null;
new_path: string;
old_mode: number;
old_oid?: string | null;
old_path?: string | null;
status: string;
}
export interface AppResponseData_Vec_ChangedPathDiffDto {
code: number;
data?: Array<{
binary: boolean;
lines_added: number;
lines_removed: number;
patch?: string | null;
path: ChangedPathDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface MergeGateDto {
allowed: boolean;
approvals: number;
bypassed: boolean;
change_requests: number;
outdated: boolean;
protected: boolean;
reasons: string[];
required_approvals: number;
}
export interface AppResponseData_PullGateDto {
code: number;
data?: {
conflicts: string[];
gate: MergeGateDto;
head_sha: string;
mergeable: boolean;
pending_review_requests: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ReviewerState = 'requested' | 'approved' | 'changes_requested' | 'commented' | 'dismissed';
export interface AppResponseData_Vec_PullReviewerDto {
code: number;
data?: Array<{
created_at: string;
id: string;
requested_by?: null | UserDto;
required: boolean;
review_id?: string | null;
state: ReviewerState;
updated_at?: string | null;
user?: null | UserDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ReviewState = 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed';
export interface AppResponseData_Vec_PullReviewDto {
code: number;
data?: Array<{
comment_count: number;
commit_sha: string;
content?: string | null;
created_at: string;
id: string;
official: boolean;
pull_request_id: string;
state: ReviewState;
updated_at?: string | null;
user?: null | UserDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PullReviewDto {
code: number;
data?: {
comment_count: number;
commit_sha: string;
content?: string | null;
created_at: string;
id: string;
official: boolean;
pull_request_id: string;
state: ReviewState;
updated_at?: string | null;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PullSummaryDto {
code: number;
data?: {
additions: number;
base_sha: string;
commits_ahead: number;
commits_behind: number;
conflicts: string[];
deletions: number;
files_changed: number;
head_sha: string;
merge_base?: string | null;
mergeable: boolean;
mergeable_state: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface MergeResultDto {
base_ref: string;
head_sha: string;
/**
* `fast_forward` | `merge_commit` | `squash` | `rebase`
*/
method: string;
new_sha: string;
old_sha: string;
/**
* rebase 时重写出来的提交(按时间正序)。
*/
rewritten: string[];
}
export interface AppResponseData_UpdateBranchDto {
code: number;
data?: {
pull: PullDto;
result: MergeResultDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ReleaseDto {
code: number;
data?: {
content?: string | null;
created_at: string;
id: string;
is_draft: boolean;
is_prerelease: boolean;
num_commits: number;
publisher?: null | UserDto;
publisher_name: string;
repo_id: string;
sha: string;
tag_name: string;
target: string;
title: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RemoteDto {
code: number;
data?: Array<{
fetch_url?: string | null;
name: string;
push_url?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_String {
code: number;
data?: string;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VerifyResultDto {
code: number;
data?: {
error_message?: string | null;
key_id?: string | null;
signed: boolean;
signer?: string | null;
valid: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RepoStarResp {
code: number;
data?: {
stars: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_TagPolicyDto {
code: number;
data?: Array<{
created_at: string;
id: string;
name_pattern: string;
repo_id: string;
updated_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TagPolicyDto {
code: number;
data?: {
created_at: string;
id: string;
name_pattern: string;
repo_id: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_TagWhitelistDto {
code: number;
data?: Array<{
policy_id: string;
user?: null | UserDto;
user_id: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type TagType = 'Lightweight' | 'Annotated';
export interface AppResponseData_TagDto {
code: number;
data?: {
created_at?: string | null;
message?: string | null;
name: string;
tag_type: TagType;
tagger_email?: string | null;
tagger_name?: string | null;
target_sha: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_TopicDto {
code: number;
data?: Array<{
created_at: string;
id: string;
name: string;
updated_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TopicDto {
code: number;
data?: {
created_at: string;
id: string;
name: string;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface ThreadDto {
archived: boolean;
created_at: string;
id: string;
last_reply_at?: string | null;
last_reply_id?: string | null;
locked: boolean;
name?: string | null;
owner?: null | UserDto;
owner_id: number;
participant_count: number;
reply_count: number;
room_id: string;
root_message_id: string;
updated_at: string;
}
export interface AppResponseData_Page {
code: number;
data?: {
items: ThreadDto[];
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_SpaceDto {
code: number;
data?: {
allow_invite: boolean;
allow_join: boolean;
allow_join_level: AllowJoinLevel;
avatar_url?: string | null;
created_at: string;
description?: string | null;
id: string;
is_active: boolean;
is_private: boolean;
lower_name: string;
member_must_enable_2fa: boolean;
members_count: number;
name: string;
owner?: null | UserDto;
updated_at: string;
welcome_message?: string | null;
welcome_object?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BanDto {
code: number;
data?: {
allow_comment_any: boolean;
allow_push_repo: boolean;
allow_speak: boolean;
banned_by?: null | UserDto;
created_at: string;
expires_at?: string | null;
reason?: string | null;
space_id: string;
updated_at: string;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_CleanupObjectDto {
code: number;
data?: Array<{
/**
* 目录的子节点数 / 频道的子频道数。
*/
child_count: number;
/**
* `dirs.id`(目录/仓库/问题集/智能体集)或 `rooms.id`(频道)。
*/
id: string;
is_archived: boolean;
/**
* 仅仓库与频道有可见性开关。
*/
is_private?: boolean | null;
/**
* `dir | object | repo | board | text | voice | stage | category | news | guild_room`
*/
kind: string;
name: string;
/**
* 目录上的权限覆盖条数(group + user)。
*/
overwrite_count: number;
/**
* 父链拼出的可读路径,例如 `bots / 研究研究`。
*/
path: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RepairDirResp {
code: number;
data?: {
fixed: number;
scanned: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_GroupOverwriteDto {
code: number;
data?: Array<{
allow_mask: number;
deny_mask: number;
dir_id: string;
group_id: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_UserOverwriteDto {
code: number;
data?: Array<{
allow_mask: number;
deny_mask: number;
dir_id: string;
user?: null | UserDto;
user_id: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_GroupDto {
code: number;
data?: {
color: string;
created_at: string;
created_by?: null | UserDto;
icon_hash?: string | null;
id: string;
name: string;
permissions: string[];
position: number;
space_id: string;
unicode_emoji?: string | null;
updated_at?: string | null;
version: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Option_SpaceImageDto {
code: number;
data?: null | {
bytes: number;
format: AvatarFormat;
height?: number | null;
kind: SpaceImageKind;
space_id: string;
updated_at: string;
url: string;
width?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_InviteDto {
code: number;
data?: {
accepted_at?: string | null;
created_at: string;
email: string;
expires_at?: string | null;
groups: string[];
id: string;
revoked_at?: string | null;
space_id: string;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_JoinRequestDto {
code: number;
data?: {
created_at: string;
decided_at?: string | null;
decided_by?: null | UserDto;
id: string;
note?: string | null;
space_id: string;
status: SpaceJoinRequestStatus;
updated_at: string;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_JoinRuleDto {
code: number;
data?: Array<{
created_at: string;
enabled: boolean;
group_id: string;
id: string;
matcher: string;
trigger: SpaceJoinTrigger;
updated_at?: string | null;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type MemberStatus = 'Active' | 'Inactive' | 'Left' | 'Removed' | 'Banned';
export interface AppResponseData_MemberDto {
code: number;
data?: {
alias_avatar_url?: string | null;
alias_name?: string | null;
created_at: string;
hide_muted_channels: boolean;
invited_at?: string | null;
invited_by?: null | UserDto;
joined_at: string;
last_active_at?: string | null;
left_at?: string | null;
message_notifications: MessageNotifications;
mobile_push: boolean;
mute_until?: string | null;
muted: boolean;
space_id: string;
status: MemberStatus;
suppress_everyone: boolean;
suppress_roles: boolean;
updated_at?: string | null;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_UserPublic {
code: number;
data?: Array<{
avatar_url: string;
display_name: string;
user_id: number;
username: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ProfileDetailDto {
code: number;
data?: {
accent_color?: string | null;
avatar_url: string;
banner_url?: string | null;
bio?: string | null;
company?: string | null;
display_name: string;
location?: string | null;
pronouns?: string | null;
real_name?: string | null;
show_activity?: boolean | null;
show_email?: boolean | null;
show_location?: boolean | null;
show_real_name?: boolean | null;
updated_at: string;
user_id: number;
username: string;
visibility?: null | ProfileVisibility;
website?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_DmDto {
code: number;
data?: {
created_at: string;
id: string;
kind: RoomKind;
last_message_id?: string | null;
last_read_seq: number;
members?: UserDto[];
name: string;
peer?: null | UserDto;
tip_seq: number;
unread_count: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ReminderDto {
code: number;
data?: {
created_at: string;
id: string;
message_id: string;
message_preview?: string | null;
note?: string | null;
remind_at: string;
room_id: string;
status: ReminderStatus;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_RoomBanDto {
code: number;
data?: {
items: Array<{
banned_by?: null | UserDto;
created_at: string;
expires_at?: string | null;
reason?: string | null;
room_id: string;
user?: null | UserDto;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomBanDto {
code: number;
data?: {
banned_by?: null | UserDto;
created_at: string;
expires_at?: string | null;
reason?: string | null;
room_id: string;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_BookmarkDto {
code: number;
data?: {
items: Array<{
created_at: string;
created_by_id: number;
emoji?: string | null;
id: string;
position: number;
room_id: string;
title: string;
url?: string | null;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BookmarkDto {
code: number;
data?: {
created_at: string;
created_by_id: number;
emoji?: string | null;
id: string;
position: number;
room_id: string;
title: string;
url?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Option_DraftDto {
code: number;
data?: null | {
content: string;
room_id: string;
thread_id?: string | null;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_DraftDto {
code: number;
data?: {
content: string;
room_id: string;
thread_id?: string | null;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomInviteDto {
code: number;
data?: {
accept_code: string;
created_at: string;
expires_at?: string | null;
id: string;
invitee?: null | UserDto;
invitee_id?: number | null;
inviter?: null | UserDto;
inviter_id: number;
room_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_RoomMemberDto {
code: number;
data?: Array<{
joined_at: string;
nick?: string | null;
role: RoomMemberRole;
user: UserDto;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface MessageDto {
attachments: AttachmentDto[];
author?: null | UserDto;
author_id: number;
author_type: AuthorType;
content: string;
created_at: string;
deleted_at?: string | null;
edited_at?: string | null;
embeds?: MessageEmbedDto[];
forwarded_from_id?: string | null;
has_thread: boolean;
id: string;
mention_everyone: boolean;
mentions: number[];
message_type: ChatMessageType;
pinned: boolean;
pinned_at?: string | null;
pinned_by_id?: number | null;
reactions?: ReactionAggDto[];
reply_to_id?: string | null;
room_id: string;
seq: number;
thread_broadcast: boolean;
thread_id?: string | null;
webhook_id?: string | null;
}
export interface AppResponseData_MessagePage {
code: number;
data?: {
has_more: boolean;
items: MessageDto[];
newest_seq?: number | null;
oldest_seq?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_OutboundWebhookSecretDto {
code: number;
data?: {
created_at: string;
id: string;
name: string;
room_id: string;
secret: string;
url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_OutboundWebhookDto {
code: number;
data?: {
created_at: string;
disabled: boolean;
id: string;
last_status?: string | null;
last_used_at?: string | null;
name: string;
room_id: string;
url: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_VoiceLayoutSavedDto {
code: number;
/**
* 本次写入的服务端时刻,客户端用它给本地副本盖戳。
*/
data?: {
updated_at: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_WebhookDto {
code: number;
data?: {
items: Array<{
created_at: string;
disabled: boolean;
id: string;
last_used_at?: string | null;
name: string;
room_id: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_WebhookSecretDto {
code: number;
data?: {
created_at: string;
disabled: boolean;
id: string;
name: string;
room_id: string;
token: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_WebhookDto {
code: number;
data?: {
created_at: string;
disabled: boolean;
id: string;
last_used_at?: string | null;
name: string;
room_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RoomDto {
code: number;
data?: {
created_at: string;
id: string;
is_active: boolean;
is_private: boolean;
kind: RoomKind;
name: string;
nsfw: boolean;
owner_id: number;
parent_id?: string | null;
position: number;
rate_limit_per_user?: number | null;
space_id?: string | null;
topic?: string | null;
updated_at: string;
user_limit?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BulkResultDto {
code: number;
data?: {
updated: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type ReactionScope = 'issue' | 'comment';
export interface AppResponseData_ReactionDto {
code: number;
data?: {
created_at: string;
emoji: string;
id: string;
scope: ReactionScope;
target_id: string;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_DependencyDto {
code: number;
data?: {
created_at: string;
dependency_id: string;
id: string;
issue_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_IssueMemberDto {
code: number;
data?: {
created_at: string;
id: string;
issue_id: string;
kind: IssueMemberKind;
updated_at?: string | null;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_IssueUserDto {
code: number;
data?: {
created_at: string;
id: string;
is_read: boolean;
issue_id: string;
user?: null | UserDto;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RepoRelDto {
code: number;
data?: {
created_at: string;
id: string;
issue_id: string;
repo_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TrackedTimeDto {
code: number;
data?: {
created_at: string;
id: string;
issue_id: string;
seconds: number;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_WatchDto {
code: number;
data?: {
created_at: string;
id: string;
issue_id?: string | null;
mode: WatchMode;
updated_at?: string | null;
user?: null | UserDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PinDto {
code: number;
data?: {
board_id: string;
created_at: string;
id: string;
issue_id?: string | null;
pin_order: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_AcceptAgreementResp {
code: number;
data?: {
recorded: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_RepoSummaryDto {
code: number;
data?: {
items: Array<{
avatar_url?: string | null;
default_branch: string;
description?: string | null;
id: string;
is_archived: boolean;
is_private: boolean;
license_name?: string | null;
name: string;
primary_language?: string | null;
size: number;
stars_count: number;
updated_at: string;
watchers_count: number;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface CodeActivityAuthorDto {
additions: number;
commits: number;
deletions: number;
email: string;
name: string;
}
export interface AppResponseData_CodeActivityDto {
code: number;
data?: {
authors: CodeActivityAuthorDto[];
total_additions: number;
total_commits: number;
total_deletions: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_BlameRangeDto {
code: number;
data?: Array<{
abbreviated_oid: string;
commit_sha: string;
ending_line: number;
path?: string | null;
starting_line: number;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_BranchWhitelistDto {
code: number;
data?: {
created_at: string;
group_id?: string | null;
id: string;
kind: WhitelistKind;
policy_id: string;
user?: null | UserDto;
user_id?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_BranchDto {
code: number;
data?: {
items: Array<{
commit_sha: string;
created_at: string;
deleted_at?: string | null;
is_deleted: boolean;
is_protected: boolean;
name: string;
updated_at: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_CommitStatusDto {
code: number;
data?: {
context: string;
created_at: string;
creator?: null | UserDto;
creator_id: number;
description?: string | null;
state: CommitStatusDtoState;
target_url?: string | null;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface CommitDto {
author_email: string;
author_name: string;
author_time: number;
committer_email: string;
committer_name: string;
committer_time: number;
id: string;
message: string;
parents: string[];
tree_id: string;
}
export interface AppResponseData_CommitsPageDto {
code: number;
data?: {
commits: CommitDto[];
diff_view_style: string;
has_more: boolean;
limit: number;
skip: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_IsAncestorResponse {
code: number;
data?: {
is_ancestor: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_MergeStatusDto {
code: number;
data?: {
conflicts: string[];
fast_forwardable: boolean;
mergeable: boolean;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ConflictDetailDto {
code: number;
data?: {
content?: string | null;
path: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Value {
code: number;
data?: null;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ScriptOutputDto {
code: number;
data?: {
exit_code: number;
stderr: string;
stdout: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_LfsPointerDto {
code: number;
data?: Array<{
oid?: string | null;
size?: number | null;
version: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface LfsLockOwner {
name: string;
}
export interface LfsLock {
id: string;
locked_at: string;
owner: LfsLockOwner;
path: string;
}
export interface AppResponseData_LfsLockListResponse {
code: number;
data?: {
locks?: LfsLock[];
next_cursor?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_LfsLock {
code: number;
data?: {
id: string;
locked_at: string;
owner: LfsLockOwner;
path: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_LfsVerifyLocksResponse {
code: number;
data?: {
next_cursor?: string | null;
ours?: LfsLock[];
theirs?: LfsLock[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PatchDto {
code: number;
data?: {
content: string;
size: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_PathLogEntryDto {
code: number;
data?: Array<{
author: string;
date: string;
path: string;
short_sha: string;
subject: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface PullSummaryDto {
additions: number;
base_sha: string;
commits_ahead: number;
commits_behind: number;
conflicts: string[];
deletions: number;
files_changed: number;
head_sha: string;
merge_base?: string | null;
mergeable: boolean;
mergeable_state: string;
}
export interface AppResponseData_MergePullDto {
code: number;
data?: {
pull: PullDto;
result: MergeResultDto;
summary: PullSummaryDto;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_FetchResultDto {
code: number;
data?: {
new: string[];
updated: string[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_ImportResultDto {
code: number;
data?: {
commit_count: number;
default_branch: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_PushResultDto {
code: number;
data?: {
pushed: string[];
rejected: string[];
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_StargazerDto {
code: number;
data?: Array<{
avatar_url: string;
display_name: string;
starred_at: string;
user_id: number;
username: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_SubmoduleDto {
code: number;
data?: Array<{
branch?: string | null;
commit_sha?: string | null;
path: string;
url: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_TagWhitelistDto {
code: number;
data?: {
policy_id: string;
user?: null | UserDto;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Page_TagDto {
code: number;
data?: {
items: Array<{
created_at?: string | null;
message?: string | null;
name: string;
tag_type: TagType;
tagger_email?: string | null;
tagger_name?: string | null;
target_sha: string;
}>;
limit: number;
offset: number;
total: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_RepoWatchDto {
code: number;
data?: {
created_at: string;
mode: WatchMode;
repo_id: string;
updated_at: string;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_WatcherDto {
code: number;
data?: Array<{
avatar_url: string;
display_name: string;
mode: WatchMode;
user_id: number;
username: string;
watching_since: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export type DirKind = 'Dir' | 'Object';
export interface DirNodeDto {
archived_at?: string | null;
children: DirNodeDto[];
color?: string | null;
created_at: string;
created_by_id: number;
icon?: string | null;
id: string;
is_archived: boolean;
kind: DirKind;
name: string;
parent_dir_id?: string | null;
position: number;
purpose?: string | null;
topic?: string | null;
updated_at: string;
}
export interface AppResponseData_Vec_DirNodeDto {
code: number;
data?: Array<{
archived_at?: string | null;
children: DirNodeDto[];
color?: string | null;
created_at: string;
created_by_id: number;
icon?: string | null;
id: string;
is_archived: boolean;
kind: DirKind;
name: string;
parent_dir_id?: string | null;
position: number;
purpose?: string | null;
topic?: string | null;
updated_at: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_DirNodeDto {
code: number;
data?: {
archived_at?: string | null;
children: DirNodeDto[];
color?: string | null;
created_at: string;
created_by_id: number;
icon?: string | null;
id: string;
is_archived: boolean;
kind: DirKind;
name: string;
parent_dir_id?: string | null;
position: number;
purpose?: string | null;
topic?: string | null;
updated_at: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_GroupOverwriteDto {
code: number;
data?: {
allow_mask: number;
deny_mask: number;
dir_id: string;
group_id: string;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_UserOverwriteDto {
code: number;
data?: {
allow_mask: number;
deny_mask: number;
dir_id: string;
user?: null | UserDto;
user_id: number;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_JoinRuleDto {
code: number;
data?: {
created_at: string;
enabled: boolean;
group_id: string;
id: string;
matcher: string;
trigger: SpaceJoinTrigger;
updated_at?: string | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_Vec_TopicRepoDto {
code: number;
data?: Array<{
is_private: boolean;
repo_id: string;
repo_name: string;
space_name: string;
}>;
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
export interface AppResponseData_SpaceImageDto {
code: number;
data?: {
bytes: number;
format: AvatarFormat;
height?: number | null;
kind: SpaceImageKind;
space_id: string;
updated_at: string;
url: string;
width?: number | null;
};
error?: string | null;
error_code?: string | null;
log_id: string;
message: string;
request_id: string;
}
declare global {
interface Apis {
auth: {
/**
* ---
*
* [POST]
*
* **path:** /auth/2fa/disable
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
totp_disable<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: TotpCodeCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'auth.totp_disable', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/2fa/enable
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* password: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* codes: string[]
* total: number
* used: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
totp_enable<
Config extends Alova2MethodConfig<AppResponseData_RecoveryCodesResp> & {
data: TotpEnableCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RecoveryCodesResp, 'auth.totp_enable', Config>;
/**
* ---
*
* [GET]
*
* **path:** /auth/2fa/recovery-codes
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* codes: string[]
* total: number
* used: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
recovery_codes<Config extends Alova2MethodConfig<AppResponseData_RecoveryCodesResp>>(
config?: Config
): Alova2Method<AppResponseData_RecoveryCodesResp, 'auth.recovery_codes', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /auth/2fa/recovery-codes
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* password: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* codes: string[]
* total: number
* used: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
regenerate_recovery_codes<
Config extends Alova2MethodConfig<AppResponseData_RecoveryCodesResp> & {
data: RegenerateRecoveryCodesCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RecoveryCodesResp, 'auth.regenerate_recovery_codes', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/2fa/setup
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* otpauth_uri: string
* secret: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
totp_setup<Config extends Alova2MethodConfig<AppResponseData_TotpSetupResp>>(
config?: Config
): Alova2Method<AppResponseData_TotpSetupResp, 'auth.totp_setup', Config>;
/**
* ---
*
* [GET]
*
* **path:** /auth/2fa/status
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* enabled: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
totp_status<Config extends Alova2MethodConfig<AppResponseData_TotpStatusResp>>(
config?: Config
): Alova2Method<AppResponseData_TotpStatusResp, 'auth.totp_status', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/access-keys/{key_id}/rotate
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* key_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* key: {
* created_at: string
* expires_at?: string | null
* id: string
* last_used_at?: string | null
* name: string
* scope: 'read' | 'write'
* }
* token: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
rotate_access_key<
Config extends Alova2MethodConfig<AppResponseData_CreateAccessKeyResp> & {
pathParams: {
key_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CreateAccessKeyResp, 'auth.rotate_access_key', Config>;
/**
* ---
*
* [GET]
*
* **path:** /auth/jwt-request
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* appid: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* expires_in_secs: number
* jwt: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
jwt_request<
Config extends Alova2MethodConfig<AppResponseData_JwtRequestResp> & {
params: {
appid: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_JwtRequestResp, 'auth.jwt_request', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/password/change
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* new_password: string
* old_password: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
change_password<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: ChangePasswordCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'auth.change_password', Config>;
};
security: {
/**
* ---
*
* [GET]
*
* **path:** /auth/access-keys
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at: string
* expires_at?: string | null
* id: string
* last_used_at?: string | null
* name: string
* scope: 'read' | 'write'
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_access_keys<
Config extends Alova2MethodConfig<AppResponseData_Page_AccessKeyDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_AccessKeyDto, 'security.list_access_keys', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/access-keys
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* expires_at?: string | null
* name: string
* scope: 'read' | 'write'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* key: {
* created_at: string
* expires_at?: string | null
* id: string
* last_used_at?: string | null
* name: string
* scope: 'read' | 'write'
* }
* token: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_access_key<
Config extends Alova2MethodConfig<AppResponseData_CreateAccessKeyResp> & {
data: CreateAccessKeyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CreateAccessKeyResp, 'security.create_access_key', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /auth/access-keys/{key_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* key_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_access_key<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
key_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'security.delete_access_key', Config>;
/**
* ---
*
* [GET]
*
* **path:** /auth/ssh-keys
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at: string
* fingerprint: string
* id: string
* key_type: 'ssh_rsa' | 'ssh_ed25519' | 'ecdsa_sha2_nistp256'
* name: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_ssh_keys<
Config extends Alova2MethodConfig<AppResponseData_Page_SshKeyDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_SshKeyDto, 'security.list_ssh_keys', Config>;
/**
* ---
*
* [POST]
*
* **path:** /auth/ssh-keys
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* fingerprint: string
* id: string
* key_type: 'ssh_rsa' | 'ssh_ed25519' | 'ecdsa_sha2_nistp256'
* name: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_ssh_key<
Config extends Alova2MethodConfig<AppResponseData_SshKeyDto> & {
data: AddSshKeyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_SshKeyDto, 'security.add_ssh_key', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /auth/ssh-keys/{key_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* key_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_ssh_key<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
key_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'security.delete_ssh_key', Config>;
};
account: {
/**
* ---
*
* [GET]
*
* **path:** /auth/agreements
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* content_md: string
* key: string
* title: string
* version: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_agreements<Config extends Alova2MethodConfig<AppResponseData_Vec_AgreementDoc>>(
config?: Config
): Alova2Method<AppResponseData_Vec_AgreementDoc, 'account.list_agreements', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* profile?: null | {
* bio?: string | null
* company?: string | null
* date_of_birth?: string | null
* location?: string | null
* privacy_agreed_at?: string | null
* pronouns?: string | null
* real_name?: string | null
* show_activity: boolean
* show_email: boolean
* show_location: boolean
* show_real_name: boolean
* website?: string | null
* }
* user: {
* avatar_url: string
* bot: boolean
* created_at: string
* display_name: string
* is_active: boolean
* is_restricted: boolean
* language?: string | null
* locale?: string | null
* prohibit_login: boolean
* system: boolean
* timezone?: string | null
* user_id: number
* username: string
* visibility: 'Public' | 'RegisteredOnly' | 'MembersOnly' | 'Private'
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
me<Config extends Alova2MethodConfig<AppResponseData_MeResp>>(
config?: Config
): Alova2Method<AppResponseData_MeResp, 'account.me', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /me
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* bio?: string | null
* company?: string | null
* date_of_birth?: string | null
* display_name?: string | null
* language?: string | null
* locale?: string | null
* location?: string | null
* pronouns?: string | null
* real_name?: string | null
* show_activity?: boolean | null
* show_email?: boolean | null
* show_location?: boolean | null
* show_real_name?: boolean | null
* timezone?: string | null
* visibility?: null | ('Public' | 'RegisteredOnly' | 'MembersOnly' | 'Private')
* website?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_profile<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: UpdateProfileCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'account.update_profile', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /me/agreements/{key}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // agreement key
* key: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* version: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* recorded: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
accept_agreement<
Config extends Alova2MethodConfig<AppResponseData_AcceptAgreementResp> & {
pathParams: {
/**
* agreement key
*/
key: string;
};
data: AcceptAgreementCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_AcceptAgreementResp, 'account.accept_agreement', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/devices
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* device_name?: string | null
* device_type?: string | null
* first_seen_at: string
* id: string
* is_trusted: boolean
* last_seen_at: string
* os?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_devices<
Config extends Alova2MethodConfig<AppResponseData_Vec_DeviceDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_DeviceDto, 'account.list_devices', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /me/notifications/read
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* all?: boolean
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* ids?: string[] | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* marked: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
mark_notifications_read<
Config extends Alova2MethodConfig<AppResponseData_MarkedCountResp> & {
data: MarkNotificationsReadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MarkedCountResp, 'account.mark_notifications_read', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/preferences
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_dms_from: 'Everyone' | 'FollowingOnly' | 'Nobody'
* allow_mentions_from: 'Everyone' | 'FollowingOnly' | 'Nobody'
* // Default view for the 问题集 page: `board` or `list`.
* board_view_mode: string
* diff_view_style?: string | null
* email_digest: boolean
* email_flags: number
* in_app_flags: number
* mute_until?: string | null
* push_flags: number
* show_online_status: boolean
* theme_mode: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_preferences<Config extends Alova2MethodConfig<AppResponseData_UserPreferencesDto>>(
config?: Config
): Alova2Method<AppResponseData_UserPreferencesDto, 'account.get_preferences', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /me/preferences
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_dms_from?: null | ('Everyone' | 'FollowingOnly' | 'Nobody')
* allow_mentions_from?: null | ('Everyone' | 'FollowingOnly' | 'Nobody')
* board_view_mode?: string | null
* diff_view_style?: string | null
* email_digest?: boolean | null
* email_flags?: number | null
* in_app_flags?: number | null
* // 三态:缺省不动、`null` 清除、给值设置(与 `lib/webapi/src/openapi.rs`
* // 声明的 PATCH 语义一致)。
* mute_until?: string | null
* push_flags?: number | null
* show_online_status?: boolean | null
* theme_mode?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_dms_from: 'Everyone' | 'FollowingOnly' | 'Nobody'
* allow_mentions_from: 'Everyone' | 'FollowingOnly' | 'Nobody'
* // Default view for the 问题集 page: `board` or `list`.
* board_view_mode: string
* diff_view_style?: string | null
* email_digest: boolean
* email_flags: number
* in_app_flags: number
* mute_until?: string | null
* push_flags: number
* show_online_status: boolean
* theme_mode: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_preferences<
Config extends Alova2MethodConfig<AppResponseData_UserPreferencesDto> & {
data: UpdatePreferencesCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_UserPreferencesDto, 'account.update_preferences', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /me/username
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* username: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_username<
Config extends Alova2MethodConfig<AppResponseData_UserPublic> & {
data: UpdateUsernameCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_UserPublic, 'account.update_username', Config>;
};
chat: {
/**
* ---
*
* [POST]
*
* **path:** /chat/attachments
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content_type: string
* description?: string | null
* filename: string
* size: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* expires_secs: number
* id: string
* upload_url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_attachment<
Config extends Alova2MethodConfig<AppResponseData_UploadIntentDto> & {
data: CreateAttachmentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_UploadIntentDto, 'chat.create_attachment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/attachments/{attachment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_attachment<
Config extends Alova2MethodConfig<AppResponseData_AttachmentDto> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_AttachmentDto, 'chat.get_attachment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/attachments/{attachment_id}/file
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // [params2] start
* // Which representation a read endpoint should hand back.
* // [params2] end
* variant?: null | ('preview' | 'original')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
download_attachment<
Config extends Alova2MethodConfig<null> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
params: {
variant?: null | ImageVariant;
};
}
>(
config: Config
): Alova2Method<null, 'chat.download_attachment', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/attachments/{attachment_id}/finalize
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* duration_secs?: number | null
* height?: number | null
* width?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
finalize_attachment<
Config extends Alova2MethodConfig<AppResponseData_AttachmentDto> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
data: FinalizeAttachmentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_AttachmentDto, 'chat.finalize_attachment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/dms
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at: string
* id: string
* kind:
* 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* last_read_seq: number
* // [items] start
* // [items] end
* members?: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* name: string
* peer?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* tip_seq: number
* unread_count: number
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_dms<
Config extends Alova2MethodConfig<AppResponseData_Page_DmDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_DmDto, 'chat.list_dms', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/dms
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* limit: number | null
* offset: number | null
* sort: string | null
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* peer_user_id?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* peer_user_ids?: number[] | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* last_read_seq: number
* // [items] start
* // [items] end
* members?: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* name: string
* peer?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* tip_seq: number
* unread_count: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
open_dm<
Config extends Alova2MethodConfig<AppResponseData_DmDto> & {
pathParams: {
limit: number | null;
offset: number | null;
sort: string | null;
};
data: OpenDmCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DmDto, 'chat.open_dm', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/dms/{room_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // dm room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
close_dm<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* dm room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.close_dm', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/drafts
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* content: string
* room_id: string
* thread_id?: string | null
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_my_drafts<Config extends Alova2MethodConfig<AppResponseData_Page_DraftDto>>(
config?: Config
): Alova2Method<AppResponseData_Page_DraftDto, 'chat.list_my_drafts', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/hooks/{token}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // webhook token
* token: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content?: string
* nonce?: string | null
* thread_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
post_via_webhook<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
/**
* webhook token
*/
token: string;
};
data: WebhookPostCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.post_via_webhook', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/invites/accept
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* favorite: boolean
* hidden: boolean
* id: string
* is_private: boolean
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* member_count: number
* muted: boolean
* name: string
* nsfw: boolean
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* parent_id?: string | null
* position: number
* rate_limit_per_user?: number | null
* space_id?: string | null
* topic?: string | null
* unread_count: number
* unread_mentions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
accept_room_invite<
Config extends Alova2MethodConfig<AppResponseData_RoomBriefDto> & {
data: AcceptRoomInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomBriefDto, 'chat.accept_room_invite', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/invites/reject
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
reject_room_invite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: AcceptRoomInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.reject_room_invite', Config>;
/**
* ---
*
* [POST] LiveKit webhook:无会话,用 api_key/api_secret 验签 Authorization 与 body sha256。
*
* **path:** /chat/livekit/webhook
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
livekit_webhook<Config extends Alova2MethodConfig<AppResponseData_NoData>>(
config?: Config
): Alova2Method<AppResponseData_NoData, 'chat.livekit_webhook', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/presence
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* activities?: null
* status: 'Active' | 'Away' | 'Dnd' | 'Offline'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* activities: null
* last_seen_at?: string | null
* online: boolean
* status: 'Active' | 'Away' | 'Dnd' | 'Offline'
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_presence<
Config extends Alova2MethodConfig<AppResponseData_PresenceDto> & {
data: SetPresenceCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PresenceDto, 'chat.set_presence', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/reminders
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* message_id: string
* message_preview?: string | null
* note?: string | null
* remind_at: string
* room_id: string
* status: 'Pending' | 'Done' | 'Cancelled' | 'Delivering'
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_reminders<Config extends Alova2MethodConfig<AppResponseData_Vec_ReminderDto>>(
config?: Config
): Alova2Method<AppResponseData_Vec_ReminderDto, 'chat.list_reminders', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/reminders/{reminder_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // reminder id
* reminder_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
cancel_reminder<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* reminder id
*/
reminder_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.cancel_reminder', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/reminders/{reminder_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* reminder_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* note?: string | null
* remind_at?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* message_id: string
* message_preview?: string | null
* note?: string | null
* remind_at: string
* room_id: string
* status: 'Pending' | 'Done' | 'Cancelled' | 'Delivering'
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_reminder<
Config extends Alova2MethodConfig<AppResponseData_ReminderDto> & {
pathParams: {
reminder_id: string;
};
data: UpdateReminderCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReminderDto, 'chat.update_reminder', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* favorite: boolean
* hidden: boolean
* id: string
* is_private: boolean
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* member_count: number
* muted: boolean
* name: string
* nsfw: boolean
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* parent_id?: string | null
* position: number
* rate_limit_per_user?: number | null
* space_id?: string | null
* topic?: string | null
* unread_count: number
* unread_mentions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_room<
Config extends Alova2MethodConfig<AppResponseData_RoomBriefDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RoomBriefDto, 'chat.get_room', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_room<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_room', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* is_private?: boolean | null
* name?: string | null
* nsfw?: boolean | null
* // Move the room under another directory node of the same space; `null` puts
* // it back at the space root. Absent means "leave the parent alone".
* parent_id?: string | null
* position?: number | null
* rate_limit_per_user?: number | null
* topic?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* favorite: boolean
* hidden: boolean
* id: string
* is_private: boolean
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* member_count: number
* muted: boolean
* name: string
* nsfw: boolean
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* parent_id?: string | null
* position: number
* rate_limit_per_user?: number | null
* space_id?: string | null
* topic?: string | null
* unread_count: number
* unread_mentions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_room<
Config extends Alova2MethodConfig<AppResponseData_RoomBriefDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: UpdateRoomCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomBriefDto, 'chat.update_room', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/bans
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* banned_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* created_at: string
* expires_at?: string | null
* reason?: string | null
* room_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_room_bans<
Config extends Alova2MethodConfig<AppResponseData_Page_RoomBanDto> & {
pathParams: {
room_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_RoomBanDto, 'chat.list_room_bans', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/bans
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* expires_at?: string | null
* reason?: string | null
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* banned_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* created_at: string
* expires_at?: string | null
* reason?: string | null
* room_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
ban_room_member<
Config extends Alova2MethodConfig<AppResponseData_RoomBanDto> & {
pathParams: {
room_id: string;
};
data: BanRoomMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomBanDto, 'chat.ban_room_member', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/bans/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unban_room_member<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.unban_room_member', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/bookmarks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at: string
* created_by_id: number
* emoji?: string | null
* id: string
* position: number
* room_id: string
* title: string
* url?: string | null
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_bookmarks<
Config extends Alova2MethodConfig<AppResponseData_Page_BookmarkDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_BookmarkDto, 'chat.list_bookmarks', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/bookmarks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji?: string | null
* title: string
* url?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* created_by_id: number
* emoji?: string | null
* id: string
* position: number
* room_id: string
* title: string
* url?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_bookmark<
Config extends Alova2MethodConfig<AppResponseData_BookmarkDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: CreateBookmarkCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BookmarkDto, 'chat.create_bookmark', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/bookmarks/{bookmark_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // bookmark id
* bookmark_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_bookmark<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* bookmark id
*/
bookmark_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_bookmark', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}/bookmarks/{bookmark_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // bookmark id
* bookmark_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji?: string | null
* position?: number | null
* title?: string | null
* url?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* created_by_id: number
* emoji?: string | null
* id: string
* position: number
* room_id: string
* title: string
* url?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_bookmark<
Config extends Alova2MethodConfig<AppResponseData_BookmarkDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* bookmark id
*/
bookmark_id: string;
};
data: UpdateBookmarkCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BookmarkDto, 'chat.update_bookmark', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/draft
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* thread_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null | {
* content: string
* room_id: string
* thread_id?: string | null
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_draft<
Config extends Alova2MethodConfig<AppResponseData_Option_DraftDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
thread_id?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Option_DraftDto, 'chat.get_draft', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/draft
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content: string
* thread_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content: string
* room_id: string
* thread_id?: string | null
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upsert_draft<
Config extends Alova2MethodConfig<AppResponseData_DraftDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: UpsertDraftCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DraftDto, 'chat.upsert_draft', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/draft
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // thread scope
* thread_id?: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_draft<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
};
params: {
/**
* thread scope
*/
thread_id?: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_draft', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/invites
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* accepted_at?: string | null
* created_at: string
* expires_at?: string | null
* id: string
* invitee?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* invitee_id?: number | null
* inviter?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* inviter_id: number
* revoked_at?: string | null
* room_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_room_invites<
Config extends Alova2MethodConfig<AppResponseData_Vec_RoomInviteListItemDto> & {
pathParams: {
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RoomInviteListItemDto, 'chat.list_room_invites', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/invites
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* expires_secs?: number | null
* invitee_id?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* accept_code: string
* created_at: string
* expires_at?: string | null
* id: string
* invitee?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* invitee_id?: number | null
* inviter?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* inviter_id: number
* room_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_room_invite<
Config extends Alova2MethodConfig<AppResponseData_RoomInviteDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: CreateRoomInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomInviteDto, 'chat.create_room_invite', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/invites/{invite_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* invite_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
revoke_room_invite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
invite_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.revoke_room_invite', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* joined_at: string
* nick?: string | null
* role: 'member' | 'moderator' | 'admin' | 'owner'
* user: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_room_members<
Config extends Alova2MethodConfig<AppResponseData_Vec_RoomMemberDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RoomMemberDto, 'chat.list_room_members', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [items] start
* // [items] end
* user_ids: number[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_room_members<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: AddMembersCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.add_room_members', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
join_room<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.join_room', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
leave_room<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.leave_room', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* joined_at: string
* nick?: string | null
* role: 'member' | 'moderator' | 'admin' | 'owner'
* user: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_room_member<
Config extends Alova2MethodConfig<AppResponseData_RoomMemberDto> & {
pathParams: {
room_id: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RoomMemberDto, 'chat.get_room_member', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
kick_room_member<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.kick_room_member', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* user_id: number
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* nick?: string | null
* role?: null | ('member' | 'moderator' | 'admin' | 'owner')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* joined_at: string
* nick?: string | null
* role: 'member' | 'moderator' | 'admin' | 'owner'
* user: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_room_member<
Config extends Alova2MethodConfig<AppResponseData_RoomMemberDto> & {
pathParams: {
room_id: string;
user_id: number;
};
data: UpdateRoomMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomMemberDto, 'chat.update_room_member', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/messages
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* before_seq?: number | null
* after_seq?: number | null
* limit?: number | null
* thread_id?: string | null
* author_id?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* has_more: boolean
* // [items] start
* // [items] end
* items: Array<{
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }>
* newest_seq?: number | null
* oldest_seq?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_messages<
Config extends Alova2MethodConfig<AppResponseData_MessagePage> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
before_seq?: number | null;
after_seq?: number | null;
limit?: number | null;
thread_id?: string | null;
author_id?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_MessagePage, 'chat.list_messages', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/messages
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [items] start
* // [items] end
* attachments?: string[]
* content?: string
* forwarded_from?: string | null
* // client-generated idempotency key, unique per room; retrying with the
* // same nonce returns the original message instead of duplicating
* nonce?: string | null
* reply_to_id?: string | null
* thread_broadcast?: boolean
* thread_id?: string | null
* urgent?: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
send_message<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: SendMessageCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.send_message', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/messages/bulk-delete
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [items] start
* // [items] end
* message_ids: string[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
bulk_delete_messages<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: BulkDeleteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.bulk_delete_messages', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_message<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
room_id: string;
message_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.get_message', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_message<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
message_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_message', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_message<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
room_id: string;
message_id: string;
};
data: UpdateMessageCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.update_message', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/forward
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* comment?: string | null
* target_room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
forward_message<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
room_id: string;
message_id: string;
};
data: ForwardMessageCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.forward_message', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/history
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* content: string
* created_at: string
* editor?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* id: string
* message_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_message_history<
Config extends Alova2MethodConfig<AppResponseData_Vec_MessageEditDto> & {
pathParams: {
room_id: string;
message_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_MessageEditDto, 'chat.list_message_history', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/pin
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* pinned: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_message_pin<
Config extends Alova2MethodConfig<AppResponseData_MessageDto> & {
pathParams: {
room_id: string;
message_id: string;
};
data: PinCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MessageDto, 'chat.set_message_pin', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/reactions
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // message id
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* emoji: string
* user: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_reactions<
Config extends Alova2MethodConfig<AppResponseData_Vec_ReactionUserDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* message id
*/
message_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ReactionUserDto, 'chat.list_reactions', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // message id
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_reaction<
Config extends Alova2MethodConfig<AppResponseData_Vec_ReactionAggDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* message id
*/
message_id: string;
};
data: ReactionCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ReactionAggDto, 'chat.add_reaction', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // message id
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_reaction<
Config extends Alova2MethodConfig<AppResponseData_Vec_ReactionAggDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* message id
*/
message_id: string;
};
data: ReactionCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ReactionAggDto, 'chat.remove_reaction', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/reminders
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // message id
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* note?: string | null
* remind_at: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* message_id: string
* message_preview?: string | null
* note?: string | null
* remind_at: string
* room_id: string
* status: 'Pending' | 'Done' | 'Cancelled' | 'Delivering'
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_reminder<
Config extends Alova2MethodConfig<AppResponseData_ReminderDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* message id
*/
message_id: string;
};
data: CreateReminderCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReminderDto, 'chat.create_reminder', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/messages/{message_id}/threads
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // root message id
* message_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_thread<
Config extends Alova2MethodConfig<AppResponseData_ThreadDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* root message id
*/
message_id: string;
};
data: CreateThreadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ThreadDto, 'chat.create_thread', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/outbound-webhooks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* disabled: boolean
* id: string
* last_status?: string | null
* last_used_at?: string | null
* name: string
* room_id: string
* url: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_outbound_webhooks<
Config extends Alova2MethodConfig<AppResponseData_Vec_OutboundWebhookDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_OutboundWebhookDto, 'chat.list_outbound_webhooks', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/outbound-webhooks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* url: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name: string
* room_id: string
* secret: string
* url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_outbound_webhook<
Config extends Alova2MethodConfig<AppResponseData_OutboundWebhookSecretDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: CreateOutboundWebhookCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_OutboundWebhookSecretDto, 'chat.create_outbound_webhook', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/outbound-webhooks/{webhook_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* webhook_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_outbound_webhook<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
webhook_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_outbound_webhook', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}/outbound-webhooks/{webhook_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* webhook_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* disabled?: boolean | null
* name?: string | null
* url?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* disabled: boolean
* id: string
* last_status?: string | null
* last_used_at?: string | null
* name: string
* room_id: string
* url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_outbound_webhook<
Config extends Alova2MethodConfig<AppResponseData_OutboundWebhookDto> & {
pathParams: {
room_id: string;
webhook_id: string;
};
data: UpdateOutboundWebhookCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_OutboundWebhookDto, 'chat.update_outbound_webhook', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/owner
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
transfer_room_owner<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
room_id: string;
};
data: TransferOwnerCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.transfer_room_owner', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/pins
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* // [items] start
* // [items] end
* attachments: Array<{
* content_type: string
* created_at: string
* description?: string | null
* duration_secs?: number | null
* filename: string
* height?: number | null
* id: string
* message_id?: string | null
* room_id?: string | null
* size: number
* status: 'Pending' | 'Uploaded'
* user_id: number
* width?: number | null
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* author_id: number
* author_type: 'User' | 'Bot' | 'Webhook'
* content: string
* created_at: string
* deleted_at?: string | null
* edited_at?: string | null
* // [items] start
* // [items] end
* embeds?: Array<{
* aspect?: string | null
* category?: string | null
* description?: string | null
* // 平台声明的固定像素高;前端据它给 iframe 定高(重量级见 `social::render`)。
* height?: number | null
* html?: string | null
* image_url?: string | null
* kind?: string | null
* platform?: string | null
* platform_name?: string | null
* site_name?: string | null
* src?: string | null
* title?: string | null
* type: string
* url: string
* }>
* forwarded_from_id?: string | null
* has_thread: boolean
* id: string
* mention_everyone: boolean
* // [items] start
* // [items] end
* mentions: number[]
* message_type:
* | 'Default'
* | 'Reply'
* | 'ThreadCreated'
* | 'ChannelJoin'
* | 'ChannelLeave'
* | 'ChannelTopic'
* | 'ChannelPinnedItem'
* | 'Reminder'
* | 'System'
* pinned: boolean
* pinned_at?: string | null
* pinned_by_id?: number | null
* // [items] start
* // [items] end
* reactions?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* reply_to_id?: string | null
* room_id: string
* seq: number
* thread_broadcast: boolean
* thread_id?: string | null
* webhook_id?: string | null
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pins<
Config extends Alova2MethodConfig<AppResponseData_Page_MessageDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_MessageDto, 'chat.list_pins', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/read-state
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* last_read_message_id?: string | null
* last_read_seq: number
* last_viewed_at?: string | null
* room_id: string
* tip_seq: number
* unread_count: number
* unread_mentions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_read_state<
Config extends Alova2MethodConfig<AppResponseData_ReadStateDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ReadStateDto, 'chat.get_read_state', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/read-state
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* message_id?: string | null
* seq?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* last_read_message_id?: string | null
* last_read_seq: number
* last_viewed_at?: string | null
* room_id: string
* tip_seq: number
* unread_count: number
* unread_mentions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
mark_read<
Config extends Alova2MethodConfig<AppResponseData_ReadStateDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: MarkReadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReadStateDto, 'chat.mark_read', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/settings
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* favorite: boolean
* hidden: boolean
* mute_until?: string | null
* muted: boolean
* notification_level: 'Default' | 'All' | 'Mentions' | 'Nothing'
* room_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_room_setting<
Config extends Alova2MethodConfig<AppResponseData_RoomSettingDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RoomSettingDto, 'chat.get_room_setting', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/settings
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* favorite?: boolean | null
* hidden?: boolean | null
* mute_minutes?: number | null
* muted?: boolean | null
* notification_level?: null | ('Default' | 'All' | 'Mentions' | 'Nothing')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* favorite: boolean
* hidden: boolean
* mute_until?: string | null
* muted: boolean
* notification_level: 'Default' | 'All' | 'Mentions' | 'Nothing'
* room_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_room_setting<
Config extends Alova2MethodConfig<AppResponseData_RoomSettingDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: UpdateRoomSettingCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomSettingDto, 'chat.update_room_setting', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/threads
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* archived?: boolean | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_threads<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
archived?: boolean | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'chat.list_threads', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/voice/hands
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* can_moderate: boolean
* // [items] start
* // [items] end
* hands: Array<{
* avatar_url?: string | null
* display_name: string
* requested_at: number
* // 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
* state: 'pending' | 'approved' | 'denied' | 'revoked'
* user_id: number
* }>
* // [params2] start
* // 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
* // [params2] end
* my_state?: null | ('pending' | 'approved' | 'denied' | 'revoked')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_hands<
Config extends Alova2MethodConfig<AppResponseData_VoiceHandsDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceHandsDto, 'chat.list_hands', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/hands
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* avatar_url?: string | null
* display_name: string
* requested_at: number
* // 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
* state: 'pending' | 'approved' | 'denied' | 'revoked'
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
raise_hand<
Config extends Alova2MethodConfig<AppResponseData_HandDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_HandDto, 'chat.raise_hand', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/voice/hands/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
cancel_hand<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.cancel_hand', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/hands/{user_id}/approve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* action: string
* ok: boolean
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
approve_hand<
Config extends Alova2MethodConfig<AppResponseData_VoiceModerationDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* target user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceModerationDto, 'chat.approve_hand', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/hands/{user_id}/deny
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* action: string
* ok: boolean
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
deny_hand<
Config extends Alova2MethodConfig<AppResponseData_VoiceModerationDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* target user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceModerationDto, 'chat.deny_hand', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/hands/{user_id}/revoke
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* action: string
* ok: boolean
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
revoke_hand<
Config extends Alova2MethodConfig<AppResponseData_VoiceModerationDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* target user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceModerationDto, 'chat.revoke_hand', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/voice/layout
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // key 为参与者用户 id。
* tiles?: Record<
* string,
* {
* // 归一化高度,和 `w` 一样按画布的可用宽高分别归一,因此窗口可以自由
* // 拉伸而不是只能等比缩放。旧记录没有这个字段,读出来是 `None`,客户端
* // 按宽度的 3/4 补一个经典比例。
* h?: number | null
* // 服务端写入时刻(秒)。请求里被忽略,响应里供客户端判断“谁更新”,
* // 这样并发拖拽时一个迟到的 GET 不会把刚摆好的窗口拽回旧位置。
* updated_at?: number
* // 归一化宽度。
* w: number
* x: number
* y: number
* }
* >
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_voice_layout<
Config extends Alova2MethodConfig<AppResponseData_VoiceLayoutDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceLayoutDto, 'chat.get_voice_layout', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/rooms/{room_id}/voice/layout
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // 需要收回自动网格的窗口 key。
* // [items] start
* // [items] end
* removed?: string[]
* // 需要新增或覆盖的窗口(key = 参与者用户 id)。
* tiles?: Record<
* string,
* {
* // 归一化高度,和 `w` 一样按画布的可用宽高分别归一,因此窗口可以自由
* // 拉伸而不是只能等比缩放。旧记录没有这个字段,读出来是 `None`,客户端
* // 按宽度的 3/4 补一个经典比例。
* h?: number | null
* // 服务端写入时刻(秒)。请求里被忽略,响应里供客户端判断“谁更新”,
* // 这样并发拖拽时一个迟到的 GET 不会把刚摆好的窗口拽回旧位置。
* updated_at?: number
* // 归一化宽度。
* w: number
* x: number
* y: number
* }
* >
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // 本次写入的服务端时刻,客户端用它给本地副本盖戳。
* data?: {
* updated_at: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
save_voice_layout<
Config extends Alova2MethodConfig<AppResponseData_VoiceLayoutSavedDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: VoiceLayoutPatchDto;
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceLayoutSavedDto, 'chat.save_voice_layout', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/voice/participants
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // 房间参与者快照。
* // 权威来源是 LiveKit 的 list_participants,Redis 只补主持人静音等本地状态;
* // 这是「谁在这个频道里」的服务端视图,用于侧栏人数与未加入时的预览。
* // 会中界面的发言高亮、静音图标与画面轨道一律直接读浏览器里的 Room,
* // 因为本接口不是事件流,返回值天然是快照。
* // [items] end
* data?: Array<{
* avatar_url?: string | null
* can_publish: boolean
* display_name: string
* joined_at: number
* moderator_muted: boolean
* // 快照值:list_participants 不返回发言状态,因此这里恒为 false;
* // 实时发言指示由前端从 Room 的 activeSpeakers 读取。
* speaking: boolean
* // [items] start
* // [items] end
* tracks: Array<{
* kind: string
* muted: boolean
* sid: string
* source: string
* }>
* user_id: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
voice_participants<
Config extends Alova2MethodConfig<AppResponseData_Vec_VoiceParticipantDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_VoiceParticipantDto, 'chat.voice_participants', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/voice/participants/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* action: string
* ok: boolean
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
kick_participant<
Config extends Alova2MethodConfig<AppResponseData_VoiceModerationDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* target user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceModerationDto, 'chat.kick_participant', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/participants/{user_id}/mute
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // false to unmute
* muted?: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* action: string
* ok: boolean
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
moderate_mute<
Config extends Alova2MethodConfig<AppResponseData_VoiceModerationDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* target user id
*/
user_id: number;
};
params: {
/**
* false to unmute
*/
muted?: boolean;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceModerationDto, 'chat.moderate_mute', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/recording/start
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* active: boolean
* egress_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
start_recording<
Config extends Alova2MethodConfig<AppResponseData_VoiceRecordingDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceRecordingDto, 'chat.start_recording', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/recording/stop
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* active: boolean
* egress_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
stop_recording<
Config extends Alova2MethodConfig<AppResponseData_VoiceRecordingDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceRecordingDto, 'chat.stop_recording', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/voice/token
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* can_publish: boolean
* expires_in_secs: number
* // [params2] start
* // 举手状态。审批通过后 approved,被收回后 revoked(可再次举手)。
* // [params2] end
* hand_state?: null | ('pending' | 'approved' | 'denied' | 'revoked')
* is_stage: boolean
* room_name: string
* token: string
* url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
voice_token<
Config extends Alova2MethodConfig<AppResponseData_VoiceTokenDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceTokenDto, 'chat.voice_token', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/rooms/{room_id}/webhooks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at: string
* disabled: boolean
* id: string
* last_used_at?: string | null
* name: string
* room_id: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_webhooks<
Config extends Alova2MethodConfig<AppResponseData_Page_WebhookDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_WebhookDto, 'chat.list_webhooks', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/rooms/{room_id}/webhooks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* disabled: boolean
* id: string
* name: string
* room_id: string
* token: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_webhook<
Config extends Alova2MethodConfig<AppResponseData_WebhookSecretDto> & {
pathParams: {
/**
* room id
*/
room_id: string;
};
data: CreateWebhookCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_WebhookSecretDto, 'chat.create_webhook', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/rooms/{room_id}/webhooks/{webhook_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // room id
* room_id: string
* // webhook id
* webhook_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_webhook<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* room id
*/
room_id: string;
/**
* webhook id
*/
webhook_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_webhook', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/rooms/{room_id}/webhooks/{webhook_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* room_id: string
* webhook_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* disabled?: boolean | null
* name?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* disabled: boolean
* id: string
* last_used_at?: string | null
* name: string
* room_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_webhook<
Config extends Alova2MethodConfig<AppResponseData_WebhookDto> & {
pathParams: {
room_id: string;
webhook_id: string;
};
data: UpdateWebhookCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_WebhookDto, 'chat.update_webhook', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/emojis
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* animated: boolean
* created_at: string
* disabled: boolean
* id: string
* name: string
* space_id: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_emojis<
Config extends Alova2MethodConfig<AppResponseData_Page_EmojiDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_EmojiDto, 'chat.list_emojis', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/spaces/{space_name}/emojis
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* animated?: boolean
* content_type: string
* data_base64: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* animated: boolean
* created_at: string
* disabled: boolean
* id: string
* name: string
* space_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upload_emoji<
Config extends Alova2MethodConfig<AppResponseData_EmojiDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
data: UploadEmojiCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_EmojiDto, 'chat.upload_emoji', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/emojis/{emoji_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* emoji_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* animated: boolean
* created_at: string
* disabled: boolean
* id: string
* name: string
* space_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_emoji<
Config extends Alova2MethodConfig<AppResponseData_EmojiDto> & {
pathParams: {
space_name: string;
emoji_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_EmojiDto, 'chat.get_emoji', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/spaces/{space_name}/emojis/{emoji_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // emoji id
* emoji_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_emoji<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* emoji id
*/
emoji_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.delete_emoji', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/emojis/{emoji_id}/image
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // emoji id
* emoji_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
emoji_image<
Config extends Alova2MethodConfig<null> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* emoji id
*/
emoji_id: string;
};
}
>(
config: Config
): Alova2Method<null, 'chat.emoji_image', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/presences
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* activities: null
* last_seen_at?: string | null
* online: boolean
* status: 'Active' | 'Away' | 'Dnd' | 'Offline'
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_space_presences<
Config extends Alova2MethodConfig<AppResponseData_Vec_PresenceDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PresenceDto, 'chat.list_space_presences', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/read-states
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* last_read_message_id?: string | null
* last_read_seq: number
* last_viewed_at?: string | null
* room_id: string
* tip_seq: number
* unread_count: number
* unread_mentions: number
* }>
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_space_read_states<
Config extends Alova2MethodConfig<AppResponseData_SpaceReadStatePage> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_SpaceReadStatePage, 'chat.list_space_read_states', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/rooms
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* favorite: boolean
* hidden: boolean
* id: string
* is_private: boolean
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* last_message_id?: string | null
* member_count: number
* muted: boolean
* name: string
* nsfw: boolean
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* parent_id?: string | null
* position: number
* rate_limit_per_user?: number | null
* space_id?: string | null
* topic?: string | null
* unread_count: number
* unread_mentions: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_space_rooms<
Config extends Alova2MethodConfig<AppResponseData_Vec_RoomBriefDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RoomBriefDto, 'chat.list_space_rooms', Config>;
/**
* ---
*
* [POST]
*
* **path:** /chat/spaces/{space_name}/rooms
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* is_private?: boolean
* kind?: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* name: string
* nsfw?: boolean
* parent_id?: string | null
* rate_limit_per_user?: number | null
* topic?: string | null
* user_limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* is_active: boolean
* is_private: boolean
* kind: 'GuildRoom' | 'GroupDm' | 'Dm' | 'Category' | 'Text' | 'Voice' | 'Stage' | 'News' | 'Thread' | 'DirectMessage'
* name: string
* nsfw: boolean
* owner_id: number
* parent_id?: string | null
* position: number
* rate_limit_per_user?: number | null
* space_id?: string | null
* topic?: string | null
* updated_at: string
* user_limit?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_room<
Config extends Alova2MethodConfig<AppResponseData_RoomDto> & {
pathParams: {
space_name: string;
};
data: CreateRoomCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RoomDto, 'chat.create_room', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/spaces/{space_name}/voice-states
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* rooms: Array<{
* count: number
* room_id: string
* }>
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
voice_space_states<
Config extends Alova2MethodConfig<AppResponseData_VoiceSpaceStatesDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VoiceSpaceStatesDto, 'chat.voice_space_states', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/threads
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_my_threads<
Config extends Alova2MethodConfig<AppResponseData_Page_ThreadDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_ThreadDto, 'chat.list_my_threads', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/threads/{thread_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // thread id
* thread_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_thread<
Config extends Alova2MethodConfig<AppResponseData_ThreadDto> & {
pathParams: {
/**
* thread id
*/
thread_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ThreadDto, 'chat.get_thread', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /chat/threads/{thread_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // thread id
* thread_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* archived?: boolean | null
* locked?: boolean | null
* name?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_thread<
Config extends Alova2MethodConfig<AppResponseData_ThreadDto> & {
pathParams: {
/**
* thread id
*/
thread_id: string;
};
data: UpdateThreadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ThreadDto, 'chat.update_thread', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/threads/{thread_id}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // thread id
* thread_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* notify_level?: null | ('None' | 'All')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
follow_thread<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* thread id
*/
thread_id: string;
};
data: ThreadMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.follow_thread', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /chat/threads/{thread_id}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // thread id
* thread_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unfollow_thread<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* thread id
*/
thread_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.unfollow_thread', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /chat/threads/{thread_id}/read-state
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // thread id
* thread_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* message_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
mark_thread_read<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* thread id
*/
thread_id: string;
};
data: MarkThreadReadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'chat.mark_thread_read', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/users/{user_id}/presence
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* activities: null
* last_seen_at?: string | null
* online: boolean
* status: 'Active' | 'Away' | 'Dnd' | 'Offline'
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_presence<
Config extends Alova2MethodConfig<AppResponseData_PresenceDto> & {
pathParams: {
/**
* user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PresenceDto, 'chat.get_presence', Config>;
/**
* ---
*
* [GET]
*
* **path:** /chat/voice/config
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* enabled: boolean
* recording_enabled: boolean
* url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
voice_config<Config extends Alova2MethodConfig<AppResponseData_VoiceConfigDto>>(
config?: Config
): Alova2Method<AppResponseData_VoiceConfigDto, 'chat.voice_config', Config>;
};
issues: {
/**
* ---
*
* [POST]
*
* **path:** /issues/attachments
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content_type: string
* filename: string
* size: number
* // Checked for membership so unbound uploads are still space-scoped.
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* expires_secs: number
* id: string
* upload_url: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_issue_attachment<
Config extends Alova2MethodConfig<AppResponseData_IssueUploadIntentDto> & {
data: CreateIssueAttachmentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_IssueUploadIntentDto, 'issues.create_issue_attachment', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/attachments/{attachment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_issue_attachment<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_issue_attachment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/attachments/{attachment_id}/file
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
download_issue_attachment<
Config extends Alova2MethodConfig<null> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
}
>(
config: Config
): Alova2Method<null, 'issues.download_issue_attachment', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/attachments/{attachment_id}/finalize
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // attachment id
* attachment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content_type: string
* created_at: string
* filename: string
* id: string
* // `None` until the draft is submitted with this attachment attached.
* issue_id?: string | null
* size: number
* // Upload lifecycle: a row is created before the bytes exist (`Pending`) and
* // only an `Uploaded` row may be referenced by an issue.
* status: 'pending' | 'uploaded'
* uploader_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
finalize_issue_attachment<
Config extends Alova2MethodConfig<AppResponseData_IssueAttachmentDto> & {
pathParams: {
/**
* attachment id
*/
attachment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_IssueAttachmentDto, 'issues.finalize_issue_attachment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* dir_id?: string | null
* q?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_boards<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
dir_id?: string | null;
q?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_boards', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* description?: string | null
* icon?: string | null
* name: string
* parent_dir_id?: string | null
* prefix?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* closed_issues_count: number
* created_at: string
* description?: string | null
* dir_id: string
* icon?: string | null
* id: string
* name: string
* open_issues_count: number
* // Number prefix for the board's issues (`CAD` renders as `CAD-12`).
* prefix?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_board<
Config extends Alova2MethodConfig<AppResponseData_BoardDto> & {
pathParams: {
space_name: string;
};
data: CreateBoardCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BoardDto, 'issues.create_board', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* closed_issues_count: number
* created_at: string
* description?: string | null
* dir_id: string
* icon?: string | null
* id: string
* name: string
* open_issues_count: number
* // Number prefix for the board's issues (`CAD` renders as `CAD-12`).
* prefix?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_board<
Config extends Alova2MethodConfig<AppResponseData_BoardDto> & {
pathParams: {
space_name: string;
board_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BoardDto, 'issues.get_board', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_board<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_board', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* description?: string | null
* icon?: string | null
* name?: string | null
* prefix?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* closed_issues_count: number
* created_at: string
* description?: string | null
* dir_id: string
* icon?: string | null
* id: string
* name: string
* open_issues_count: number
* // Number prefix for the board's issues (`CAD` renders as `CAD-12`).
* prefix?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_board<
Config extends Alova2MethodConfig<AppResponseData_BoardDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: UpdateBoardCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BoardDto, 'issues.update_board', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* state?: null | ('open' | 'closed')
* author_id?: number | null
* // One id or a comma-separated id list (`a,b`); `none` matches issues
* // without a milestone. Any of the listed values matches.
* milestone_id?: string | null
* // One id or a comma-separated id list (`a,b`); matches any of them.
* label_id?: string | null
* // One id or a comma-separated id list (`a,b`); matches any of them.
* assignee_id?: string | null
* // One priority or a comma-separated list (`high,urgent`).
* priority?: string | null
* sort?: string | null
* q?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issues<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
};
params: {
state?: null | IssueState;
author_id?: number | null;
/**
* One id or a comma-separated id list (`a,b`); `none` matches issues
* without a milestone. Any of the listed values matches.
*/
milestone_id?: string | null;
/**
* One id or a comma-separated id list (`a,b`); matches any of them.
*/
label_id?: string | null;
/**
* One id or a comma-separated id list (`a,b`); matches any of them.
*/
assignee_id?: string | null;
/**
* One priority or a comma-separated list (`high,urgent`).
*/
priority?: string | null;
sort?: string | null;
q?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_issues', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [items] start
* // [items] end
* assignee_ids?: number[]
* // Draft uploads (`POST /issues/attachments`) to link to the new issue.
* // [items] start
* // [items] end
* attachment_ids?: string[]
* content?: string
* description?: string | null
* due_at?: string | null
* // [items] start
* // [items] end
* label_ids?: string[]
* milestone_id?: string | null
* priority?: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* title: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* assignees: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* board_id: string
* closed_at?: string | null
* content: string
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* milestone_id?: string | null
* number: number
* priority: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* state: 'open' | 'closed'
* title: string
* updated_at?: string | null
* viewer_watch?: null | ('unwatched' | 'watching' | 'ignore')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_issue<
Config extends Alova2MethodConfig<AppResponseData_IssueDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: CreateIssueCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_IssueDto, 'issues.create_issue', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/bulk
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* action: 'close' | 'reopen'
* // [items] start
* // [items] end
* issue_refs: string[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* updated: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
bulk_issues<
Config extends Alova2MethodConfig<AppResponseData_BulkResultDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: BulkIssuesCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BulkResultDto, 'issues.bulk_issues', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* assignees: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* board_id: string
* closed_at?: string | null
* content: string
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* milestone_id?: string | null
* number: number
* priority: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* state: 'open' | 'closed'
* title: string
* updated_at?: string | null
* viewer_watch?: null | ('unwatched' | 'watching' | 'ignore')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_issue<
Config extends Alova2MethodConfig<AppResponseData_IssueDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_IssueDto, 'issues.get_issue', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_issue<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_issue', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* assignee_ids?: number[] | null
* content?: string | null
* description?: string | null
* due_at?: string | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* label_ids?: string[] | null
* milestone_id?: string | null
* priority?: null | ('none' | 'low' | 'medium' | 'high' | 'urgent')
* title?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* assignees: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* board_id: string
* closed_at?: string | null
* content: string
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* milestone_id?: string | null
* number: number
* priority: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* state: 'open' | 'closed'
* title: string
* updated_at?: string | null
* viewer_watch?: null | ('unwatched' | 'watching' | 'ignore')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_issue<
Config extends Alova2MethodConfig<AppResponseData_IssueDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: UpdateIssueCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_IssueDto, 'issues.update_issue', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/attachments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* content_type: string
* created_at: string
* filename: string
* id: string
* // `None` until the draft is submitted with this attachment attached.
* issue_id?: string | null
* size: number
* // Upload lifecycle: a row is created before the bytes exist (`Pending`) and
* // only an `Uploaded` row may be referenced by an issue.
* status: 'pending' | 'uploaded'
* uploader_id: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issue_attachments<
Config extends Alova2MethodConfig<AppResponseData_Vec_IssueAttachmentDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_IssueAttachmentDto, 'issues.list_issue_attachments', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/close
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* assignees: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* board_id: string
* closed_at?: string | null
* content: string
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* milestone_id?: string | null
* number: number
* priority: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* state: 'open' | 'closed'
* title: string
* updated_at?: string | null
* viewer_watch?: null | ('unwatched' | 'watching' | 'ignore')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
close_issue<
Config extends Alova2MethodConfig<AppResponseData_IssueDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_IssueDto, 'issues.close_issue', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* parent_id?: string | null
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_comments<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
params: {
parent_id?: string | null;
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_comments', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content: string
* parent_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content: string
* created_at: string
* id: string
* issue_id?: string | null
* parent_id?: string | null
* poster?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_comment<
Config extends Alova2MethodConfig<AppResponseData_CommentDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: CreateCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CommentDto, 'issues.create_comment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/tree
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* comment: {
* content: string
* created_at: string
* id: string
* issue_id?: string | null
* parent_id?: string | null
* poster?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at?: string | null
* }
* // [items] start
* // [items] end
* replies: Array<{
* comment: {
* content: string
* created_at: string
* id: string
* issue_id?: string | null
* parent_id?: string | null
* poster?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at?: string | null
* }
* // [items] start
* // [cycle] $.data.[].replies.[]
* // [items] end
* replies: CommentTreeNode[]
* }>
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_comments_tree<
Config extends Alova2MethodConfig<AppResponseData_Vec_CommentTreeNode> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_CommentTreeNode, 'issues.list_comments_tree', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content: string
* created_at: string
* id: string
* issue_id?: string | null
* parent_id?: string | null
* poster?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_comment<
Config extends Alova2MethodConfig<AppResponseData_CommentDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CommentDto, 'issues.get_comment', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_comment<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_comment', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content: string
* created_at: string
* id: string
* issue_id?: string | null
* parent_id?: string | null
* poster?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_comment<
Config extends Alova2MethodConfig<AppResponseData_CommentDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
data: UpdateCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CommentDto, 'issues.update_comment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}/reactions
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_comment_reactions<
Config extends Alova2MethodConfig<AppResponseData_Vec_ReactionAggDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ReactionAggDto, 'issues.list_comment_reactions', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* emoji: string
* id: string
* scope: 'issue' | 'comment'
* target_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_comment_reaction<
Config extends Alova2MethodConfig<AppResponseData_ReactionDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
data: CreateReactionCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReactionDto, 'issues.add_comment_reaction', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/comments/{comment_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* comment_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_comment_reaction<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
comment_id: string;
};
params: {
emoji: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.remove_comment_reaction', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/dependencies
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* dependency_id: string
* id: string
* issue_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_dependencies<
Config extends Alova2MethodConfig<AppResponseData_Vec_DependencyDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_DependencyDto, 'issues.list_dependencies', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/dependencies
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* dependency_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* dependency_id: string
* id: string
* issue_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_dependency<
Config extends Alova2MethodConfig<AppResponseData_DependencyDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: CreateDependencyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DependencyDto, 'issues.create_dependency', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/dependencies/{dep_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* dep_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_dependency<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
dep_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_dependency', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/dependents
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* dependency_id: string
* id: string
* issue_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_dependents<
Config extends Alova2MethodConfig<AppResponseData_Vec_DependencyDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_DependencyDto, 'issues.list_dependents', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/events
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_events<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_events', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/history
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* comment_id?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_content_history<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
params: {
comment_id?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_content_history', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/labels
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_labels_for_issue<
Config extends Alova2MethodConfig<AppResponseData_Vec_LabelDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LabelDto, 'issues.list_labels_for_issue', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/labels/{label_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* label_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
bind_label<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
label_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.bind_label', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/labels/{label_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* label_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unbind_label<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
label_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.unbind_label', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* kind?: null | ('assignee' | 'mentioned' | 'participant')
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issue_members<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
params: {
kind?: null | IssueMemberKind;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_issue_members', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* kind: 'assignee' | 'mentioned' | 'participant'
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* issue_id: string
* kind: 'assignee' | 'mentioned' | 'participant'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_member<
Config extends Alova2MethodConfig<AppResponseData_IssueMemberDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: CreateIssueMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_IssueMemberDto, 'issues.create_member', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/members/{member_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* member_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_member<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
member_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_member', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/reactions
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* count: number
* emoji: string
* me: boolean
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issue_reactions<
Config extends Alova2MethodConfig<AppResponseData_Vec_ReactionAggDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ReactionAggDto, 'issues.list_issue_reactions', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* emoji: string
* id: string
* scope: 'issue' | 'comment'
* target_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_issue_reaction<
Config extends Alova2MethodConfig<AppResponseData_ReactionDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: CreateReactionCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReactionDto, 'issues.add_issue_reaction', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/reactions/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* emoji: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_issue_reaction<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
params: {
emoji: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.remove_issue_reaction', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/read-state
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* read: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* is_read: boolean
* issue_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
mark_issue_read<
Config extends Alova2MethodConfig<AppResponseData_IssueUserDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: MarkIssueReadCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_IssueUserDto, 'issues.mark_issue_read', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/reopen
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* assignees: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* board_id: string
* closed_at?: string | null
* content: string
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* milestone_id?: string | null
* number: number
* priority: 'none' | 'low' | 'medium' | 'high' | 'urgent'
* state: 'open' | 'closed'
* title: string
* updated_at?: string | null
* viewer_watch?: null | ('unwatched' | 'watching' | 'ignore')
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
reopen_issue<
Config extends Alova2MethodConfig<AppResponseData_IssueDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_IssueDto, 'issues.reopen_issue', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/repos
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* issue_id: string
* repo_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_repo_relations<
Config extends Alova2MethodConfig<AppResponseData_Vec_RepoRelDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RepoRelDto, 'issues.list_repo_relations', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/repos
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* repo_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* issue_id: string
* repo_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_repo_relation<
Config extends Alova2MethodConfig<AppResponseData_RepoRelDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: CreateRepoRelCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RepoRelDto, 'issues.create_repo_relation', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/repos/{rel_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* rel_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_repo_relation<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
rel_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_repo_relation', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/stopwatch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at?: string | null
* id?: string | null
* issue_id: string
* running: boolean
* started_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_stopwatch<
Config extends Alova2MethodConfig<AppResponseData_StopwatchDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_StopwatchDto, 'issues.get_stopwatch', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/stopwatch/start
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at?: string | null
* id?: string | null
* issue_id: string
* running: boolean
* started_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
start_stopwatch<
Config extends Alova2MethodConfig<AppResponseData_StopwatchDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_StopwatchDto, 'issues.start_stopwatch', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/stopwatch/stop
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
stop_stopwatch<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.stop_stopwatch', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/times
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* user_id?: number | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_tracked_time<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
params: {
user_id?: number | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_tracked_time', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/times
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* seconds: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* issue_id: string
* seconds: number
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_tracked_time<
Config extends Alova2MethodConfig<AppResponseData_TrackedTimeDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
data: CreateTrackedTimeCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TrackedTimeDto, 'issues.create_tracked_time', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/times/{time_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* time_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_tracked_time<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
time_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_tracked_time', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/times/{time_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* time_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* seconds: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* issue_id: string
* seconds: number
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_tracked_time<
Config extends Alova2MethodConfig<AppResponseData_TrackedTimeDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
time_id: string;
};
data: UpdateTrackedTimeCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TrackedTimeDto, 'issues.update_tracked_time', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/users
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issue_users<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_issue_users', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/watch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* mode: 'unwatched' | 'watching' | 'ignore'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* issue_id?: string | null
* mode: 'unwatched' | 'watching' | 'ignore'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upsert_issue_watch<
Config extends Alova2MethodConfig<AppResponseData_WatchDto> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
};
data: UpsertWatchCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_WatchDto, 'issues.upsert_issue_watch', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/labels
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* q?: string | null
* is_archived?: boolean | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_labels<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
};
params: {
q?: string | null;
is_archived?: boolean | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_labels', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/labels
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* color: string
* description?: string | null
* exclusive?: boolean | null
* exclusive_order?: number | null
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_label<
Config extends Alova2MethodConfig<AppResponseData_LabelDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: CreateLabelCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_LabelDto, 'issues.create_label', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/labels/{label_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* label_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_label<
Config extends Alova2MethodConfig<AppResponseData_LabelDto> & {
pathParams: {
space_name: string;
board_id: string;
label_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_LabelDto, 'issues.get_label', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/labels/{label_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* label_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_label<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
label_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_label', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/labels/{label_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* label_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* color?: string | null
* description?: string | null
* exclusive?: boolean | null
* exclusive_order?: number | null
* is_archived?: boolean | null
* name?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_label<
Config extends Alova2MethodConfig<AppResponseData_LabelDto> & {
pathParams: {
space_name: string;
board_id: string;
label_id: string;
};
data: UpdateLabelCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_LabelDto, 'issues.update_label', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/milestones
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* is_closed?: boolean | null
* q?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_milestones<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
board_id: string;
};
params: {
is_closed?: boolean | null;
q?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'issues.list_milestones', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/milestones
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* description?: string | null
* due_at?: string | null
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* board_id: string
* closed_issues_count: number
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* is_closed: boolean
* issues_count: number
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_milestone<
Config extends Alova2MethodConfig<AppResponseData_MilestoneDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: CreateMilestoneCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MilestoneDto, 'issues.create_milestone', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/milestones/{milestone_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* milestone_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* board_id: string
* closed_issues_count: number
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* is_closed: boolean
* issues_count: number
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_milestone<
Config extends Alova2MethodConfig<AppResponseData_MilestoneDto> & {
pathParams: {
space_name: string;
board_id: string;
milestone_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_MilestoneDto, 'issues.get_milestone', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/milestones/{milestone_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* milestone_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_milestone<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
milestone_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_milestone', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/milestones/{milestone_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* milestone_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* description?: string | null
* due_at?: string | null
* is_closed?: boolean | null
* name?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* board_id: string
* closed_issues_count: number
* created_at: string
* description?: string | null
* due_at?: string | null
* id: string
* is_closed: boolean
* issues_count: number
* name: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_milestone<
Config extends Alova2MethodConfig<AppResponseData_MilestoneDto> & {
pathParams: {
space_name: string;
board_id: string;
milestone_id: string;
};
data: UpdateMilestoneCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MilestoneDto, 'issues.update_milestone', Config>;
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/pins
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* board_id: string
* created_at: string
* id: string
* issue_id?: string | null
* pin_order: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_board_pins<
Config extends Alova2MethodConfig<AppResponseData_Vec_PinDto> & {
pathParams: {
space_name: string;
board_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PinDto, 'issues.list_board_pins', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/pins
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* issue_id: string
* pin_order: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* board_id: string
* created_at: string
* id: string
* issue_id?: string | null
* pin_order: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_pin<
Config extends Alova2MethodConfig<AppResponseData_PinDto> & {
pathParams: {
space_name: string;
board_id: string;
};
data: CreatePinCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PinDto, 'issues.create_pin', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/pins/{pin_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* pin_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_pin<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
pin_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'issues.delete_pin', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /issues/{space_name}/boards/{board_id}/pins/{pin_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* pin_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* pin_order: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* board_id: string
* created_at: string
* id: string
* issue_id?: string | null
* pin_order: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_pin<
Config extends Alova2MethodConfig<AppResponseData_PinDto> & {
pathParams: {
space_name: string;
board_id: string;
pin_id: string;
};
data: UpdatePinCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PinDto, 'issues.update_pin', Config>;
};
pulls: {
/**
* ---
*
* [GET]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/pulls
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* // 建立关联的时间。
* linked_at: string
* pull: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* // 关联行主键(issue_relation_pull.id),解除关联时作为路径参数回传。
* relation_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_issue_pulls<
Config extends Alova2MethodConfig<AppResponseData_Vec_IssuePullLinkDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_IssuePullLinkDto, 'pulls.list_issue_pulls', Config>;
/**
* ---
*
* [POST]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/pulls
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* // issue uuid or board-scoped number (e.g. "123")
* issue_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // PR 编号或 UUID。
* pull_ref: string
* repo_name: string
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
link_issue_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
board_id: string;
/**
* issue uuid or board-scoped number (e.g. "123")
*/
issue_id: string;
};
data: LinkIssueCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.link_issue_pull', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /issues/{space_name}/boards/{board_id}/issues/{issue_id}/pulls/{relation_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* board_id: string
* issue_id: string
* relation_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unlink_issue_pull<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
board_id: string;
issue_id: string;
relation_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'pulls.unlink_issue_pull', Config>;
/**
* ---
*
* [GET]
*
* **path:** /pulls/@me/{scope}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // created | review-requested | reviewed
* scope: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // open | closed | merged | all
* state?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_my_pulls<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
/**
* created | review-requested | reviewed
*/
scope: string;
};
params: {
/**
* open | closed | merged | all
*/
state?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'pulls.list_my_pulls', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // open | closed | merged | all
* state?: string | null
* author?: string | null
* base?: string | null
* head?: string | null
* draft?: boolean | null
* search?: string | null
* // number | created | updated
* sort?: string | null
* // asc | desc
* order?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pulls<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
/**
* open | closed | merged | all
*/
state?: string | null;
author?: string | null;
base?: string | null;
head?: string | null;
draft?: boolean | null;
search?: string | null;
/**
* number | created | updated
*/
sort?: string | null;
/**
* asc | desc
*/
order?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'pulls.list_pulls', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* base_branch?: string | null
* body?: string | null
* draft?: boolean | null
* head_branch: string
* issue_id?: string | null
* title: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreatePullCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.create_pull', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/label-options
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_label_options<
Config extends Alova2MethodConfig<AppResponseData_Vec_LabelDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LabelDto, 'pulls.list_label_options', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.get_pull', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_pull<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'pulls.delete_pull', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* auto_merge?: boolean | null
* base_branch?: string | null
* body?: string | null
* draft?: boolean | null
* issue_id?: string | null
* title?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: UpdatePullCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.update_pull', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/assignees
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_assignees<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullAssigneeDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullAssigneeDto, 'pulls.list_pull_assignees', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/assignees/{user_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* // 用户名或 UUID。
* user_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_pull_assignee<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullAssigneeDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
/**
* 用户名或 UUID。
*/
user_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullAssigneeDto, 'pulls.add_pull_assignee', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/assignees/{user_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* // 用户名或 UUID。
* user_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_pull_assignee<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullAssigneeDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
/**
* 用户名或 UUID。
*/
user_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullAssigneeDto, 'pulls.remove_pull_assignee', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/checks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* head_sha: string
* // [items] start
* // [items] end
* statuses: Array<{
* context: string
* created_at: string
* creator?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* creator_id: number
* description?: string | null
* state: 'pending' | 'success' | 'failure' | 'error'
* target_url?: string | null
* updated_at?: string | null
* }>
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_pull_checks<
Config extends Alova2MethodConfig<AppResponseData_PullChecksDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullChecksDto, 'pulls.get_pull_checks', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/close
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
close_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.close_pull', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_comments<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'pulls.list_pull_comments', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body: string
* commit_sha?: string | null
* line?: number | null
* parent_comment_id?: string | null
* // 行内评论需要 path;缺省则为普通讨论评论。
* path?: string | null
* review_id?: string | null
* // left | right
* side?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_pull_comment<
Config extends Alova2MethodConfig<AppResponseData_PullCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: CreatePullCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullCommentDto, 'pulls.create_pull_comment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments/tree
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // 线程视图:顶层评论 + 其下全部回复(无递归,便于文档生成)。
* // [items] end
* data?: Array<{
* // [items] start
* // [items] end
* replies: Array<{
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }>
* root: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_comment_tree<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullCommentThreadDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullCommentThreadDto, 'pulls.list_pull_comment_tree', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_pull_comment<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'pulls.delete_pull_comment', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* comment_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_pull_comment<
Config extends Alova2MethodConfig<AppResponseData_PullCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
comment_id: string;
};
data: UpdatePullCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullCommentDto, 'pulls.update_pull_comment', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments/{comment_id}/resolve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
resolve_pull_comment<
Config extends Alova2MethodConfig<AppResponseData_PullCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullCommentDto, 'pulls.resolve_pull_comment', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/comments/{comment_id}/resolve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha?: string | null
* created_at: string
* id: string
* line?: number | null
* parent_comment_id?: string | null
* path?: string | null
* pull_request_id: string
* resolved: boolean
* resolved_by?: number | null
* review_id?: string | null
* side?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unresolve_pull_comment<
Config extends Alova2MethodConfig<AppResponseData_PullCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullCommentDto, 'pulls.unresolve_pull_comment', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/commits
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* author_at: string
* author_email: string
* author_name: string
* message: string
* // [items] start
* // [items] end
* parents: string[]
* sha: string
* subject: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_commits<
Config extends Alova2MethodConfig<AppResponseData_Vec_MergeCommitDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_MergeCommitDto, 'pulls.list_pull_commits', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/events
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_events<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'pulls.list_pull_events', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/files
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* binary: boolean
* lines_added: number
* lines_removed: number
* patch?: string | null
* path: {
* new_mode: number
* new_oid?: string | null
* new_path: string
* old_mode: number
* old_oid?: string | null
* old_path?: string | null
* status: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_pull_files<
Config extends Alova2MethodConfig<AppResponseData_Vec_ChangedPathDiffDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ChangedPathDiffDto, 'pulls.get_pull_files', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/gate
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* conflicts: string[]
* gate: {
* allowed: boolean
* approvals: number
* bypassed: boolean
* change_requests: number
* outdated: boolean
* protected: boolean
* // [items] start
* // [items] end
* reasons: string[]
* required_approvals: number
* }
* head_sha: string
* mergeable: boolean
* pending_review_requests: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_pull_gate<
Config extends Alova2MethodConfig<AppResponseData_PullGateDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullGateDto, 'pulls.get_pull_gate', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/labels
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_pull_labels<
Config extends Alova2MethodConfig<AppResponseData_Vec_LabelDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LabelDto, 'pulls.list_pull_labels', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/labels
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // 标签 UUID 或名称(同一仓库目录内的标签)。
* label: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
attach_pull_label<
Config extends Alova2MethodConfig<AppResponseData_Vec_LabelDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: AttachLabelCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LabelDto, 'pulls.attach_pull_label', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/labels/{label_ref}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* // 标签 UUID 或名称。
* label_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* color: string
* created_at: string
* description?: string | null
* dir_id: string
* exclusive: boolean
* exclusive_order: number
* id: string
* is_archived: boolean
* name: string
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
detach_pull_label<
Config extends Alova2MethodConfig<AppResponseData_Vec_LabelDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
/**
* 标签 UUID 或名称。
*/
label_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LabelDto, 'pulls.detach_pull_label', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/lock
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
lock_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.lock_pull', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/lock
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unlock_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.unlock_pull', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/merge
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* delete_branch_after_merge?: boolean | null
* expect_head_sha?: string | null
* // 允许在无冲突时直接快进(method=merge 时生效)。
* fast_forward_only?: boolean | null
* message?: string | null
* // [params2] start
* // merge | squash | rebase
* // [params2] end
* method?: null | ('merge' | 'squash' | 'rebase')
* title?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* pull: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* result: {
* base_ref: string
* head_sha: string
* // `fast_forward` | `merge_commit` | `squash` | `rebase`
* method: string
* new_sha: string
* old_sha: string
* // rebase 时重写出来的提交(按时间正序)。
* // [items] start
* // [items] end
* rewritten: string[]
* }
* summary: {
* additions: number
* base_sha: string
* commits_ahead: number
* commits_behind: number
* // [items] start
* // [items] end
* conflicts: string[]
* deletions: number
* files_changed: number
* head_sha: string
* merge_base?: string | null
* mergeable: boolean
* mergeable_state: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
merge_pull<
Config extends Alova2MethodConfig<AppResponseData_MergePullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: MergePullCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MergePullDto, 'pulls.merge_pull', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/patch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = string
* ```
*/
get_pull_patch<
Config extends Alova2MethodConfig<string> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<string, 'pulls.get_pull_patch', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reopen
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
reopen_pull<
Config extends Alova2MethodConfig<AppResponseData_PullDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullDto, 'pulls.reopen_pull', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/summary
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* base_sha: string
* commits_ahead: number
* commits_behind: number
* // [items] start
* // [items] end
* conflicts: string[]
* deletions: number
* files_changed: number
* head_sha: string
* merge_base?: string | null
* mergeable: boolean
* mergeable_state: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
refresh_pull_summary<
Config extends Alova2MethodConfig<AppResponseData_PullSummaryDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullSummaryDto, 'pulls.refresh_pull_summary', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/update-branch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* pull: {
* additions: number
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* auto_merge: boolean
* base: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* body: string
* closed_at?: string | null
* commits_ahead?: number | null
* commits_behind?: number | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* conflicts?: string[] | null
* created_at: string
* deletions: number
* files_changed: number
* head: {
* branch: string
* label: string
* repo_id?: string | null
* sha: string
* }
* id: string
* is_draft: boolean
* issue_id?: string | null
* locked: boolean
* merge_method: 'merge' | 'squash' | 'rebase'
* mergeable?: boolean | null
* mergeable_state?: string | null
* merged_at?: string | null
* merged_commit_sha?: string | null
* merger?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* number: number
* repo_id: string
* squash_commit_sha?: string | null
* state: 'open' | 'closed' | 'merged'
* title: string
* updated_at?: string | null
* }
* result: {
* base_ref: string
* head_sha: string
* // `fast_forward` | `merge_commit` | `squash` | `rebase`
* method: string
* new_sha: string
* old_sha: string
* // rebase 时重写出来的提交(按时间正序)。
* // [items] start
* // [items] end
* rewritten: string[]
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_branch_pull<
Config extends Alova2MethodConfig<AppResponseData_UpdateBranchDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_UpdateBranchDto, 'pulls.update_branch_pull', Config>;
};
licenses: {
/**
* ---
*
* [GET]
*
* **path:** /licenses
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* body: string
* created_at: string
* description?: string | null
* display_name: string
* name: string
* updated_at: string
* url?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_licenses<
Config extends Alova2MethodConfig<AppResponseData_Vec_LicenseDto> & {
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LicenseDto, 'licenses.list_licenses', Config>;
/**
* ---
*
* [GET]
*
* **path:** /licenses/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* body: string
* created_at: string
* description?: string | null
* display_name: string
* name: string
* updated_at: string
* url?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_license<
Config extends Alova2MethodConfig<AppResponseData_LicenseDto> & {
pathParams: {
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_LicenseDto, 'licenses.get_license', Config>;
};
user: {
/**
* ---
*
* [GET]
*
* **path:** /me/avatar
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null | {
* // Size of the uploaded original in bytes.
* bytes: number
* // Format of the uploaded original.
* format: 'jpg' | 'png' | 'webp' | 'gif'
* updated_at: string
* // Browser-facing URL. Points at the compressed derivative when one exists,
* // and at the uploaded bytes otherwise.
* url: string
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_avatar<Config extends Alova2MethodConfig<AppResponseData_Option_AvatarDto>>(
config?: Config
): Alova2Method<AppResponseData_Option_AvatarDto, 'user.get_avatar', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /me/avatar
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = number[]
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // Size of the uploaded original in bytes.
* bytes: number
* // Format of the uploaded original.
* format: 'jpg' | 'png' | 'webp' | 'gif'
* updated_at: string
* // Browser-facing URL. Points at the compressed derivative when one exists,
* // and at the uploaded bytes otherwise.
* url: string
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upload_avatar<
Config extends Alova2MethodConfig<AppResponseData_AvatarDto> & {
data: number[];
}
>(
config: Config
): Alova2Method<AppResponseData_AvatarDto, 'user.upload_avatar', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/avatar
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_avatar<Config extends Alova2MethodConfig<AppResponseData_NoData>>(
config?: Config
): Alova2Method<AppResponseData_NoData, 'user.delete_avatar', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/memes
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* content_type: string
* created_at: string
* height?: number | null
* id: string
* name: string
* size: number
* url: string
* width?: number | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_memes<
Config extends Alova2MethodConfig<AppResponseData_Vec_MemeDto> & {
params: {
limit?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_MemeDto, 'user.list_memes', Config>;
/**
* ---
*
* [POST]
*
* **path:** /me/memes
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content_type: string
* height?: number | null
* name: string
* size: number
* url: string
* width?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content_type: string
* created_at: string
* height?: number | null
* id: string
* name: string
* size: number
* url: string
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_meme<
Config extends Alova2MethodConfig<AppResponseData_MemeDto> & {
data: UpsertMemeCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MemeDto, 'user.create_meme', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /me/memes/{meme_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* meme_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content_type: string
* height?: number | null
* name: string
* size: number
* url: string
* width?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content_type: string
* created_at: string
* height?: number | null
* id: string
* name: string
* size: number
* url: string
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_meme<
Config extends Alova2MethodConfig<AppResponseData_MemeDto> & {
pathParams: {
meme_id: string;
};
data: UpsertMemeCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MemeDto, 'user.update_meme', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/memes/{meme_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // meme id
* meme_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_meme<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* meme id
*/
meme_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'user.delete_meme', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/messages/saved
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* channel_id: string
* id: string
* message_id: string
* saved_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_saved_messages<
Config extends Alova2MethodConfig<AppResponseData_Vec_SavedMessageDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_SavedMessageDto, 'user.list_saved_messages', Config>;
/**
* ---
*
* [POST]
*
* **path:** /me/messages/saved
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* channel_id: string
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* channel_id: string
* id: string
* message_id: string
* saved_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
save_message<
Config extends Alova2MethodConfig<AppResponseData_SavedMessageDto> & {
data: SaveMessageCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_SavedMessageDto, 'user.save_message', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/messages/saved/{message_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // message id
* message_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unsave_message<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* message id
*/
message_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'user.unsave_message', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/push-subscriptions
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* endpoint: string
* id: string
* platform: 'WebPush' | 'AndroidFcm' | 'IosApns'
* updated_at?: string | null
* user_agent?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_push_subscriptions<
Config extends Alova2MethodConfig<AppResponseData_Vec_PushSubscriptionDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PushSubscriptionDto, 'user.list_push_subscriptions', Config>;
/**
* ---
*
* [POST]
*
* **path:** /me/push-subscriptions
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* auth_key: string
* endpoint: string
* p256dh_key: string
* platform: 'WebPush' | 'AndroidFcm' | 'IosApns'
* user_agent?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* endpoint: string
* id: string
* platform: 'WebPush' | 'AndroidFcm' | 'IosApns'
* updated_at?: string | null
* user_agent?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upsert_push_subscription<
Config extends Alova2MethodConfig<AppResponseData_PushSubscriptionDto> & {
data: UpsertPushCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PushSubscriptionDto, 'user.upsert_push_subscription', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/push-subscriptions/{push_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // push subscription id
* push_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_push_subscription<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* push subscription id
*/
push_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'user.delete_push_subscription', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/recent-mentions
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* channel_id: string
* created_at: string
* id: string
* message_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
recent_mentions<
Config extends Alova2MethodConfig<AppResponseData_Vec_RecentMentionDto> & {
params: {
limit?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RecentMentionDto, 'user.recent_mentions', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/reports
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* evidence?: string | null
* id: string
* reason: string
* reported_id: number
* resolution_note?: string | null
* status: 'open' | 'under_review' | 'resolved' | 'dismissed'
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
my_reports<
Config extends Alova2MethodConfig<AppResponseData_Vec_UserReportDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_UserReportDto, 'user.my_reports', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/sessions
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* kind?: null | ('WebLogin' | 'BearerAccess')
* include_revoked?: boolean | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* client_ip_hash?: string | null
* created_at: string
* device_id?: string | null
* expires_at: string
* id: string
* is_current: boolean
* is_revoked: boolean
* kind: 'WebLogin' | 'BearerAccess'
* last_seen_at: string
* revoked_at?: string | null
* user_agent_hash?: string | null
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_sessions<
Config extends Alova2MethodConfig<AppResponseData_Page_SessionDto> & {
params: {
kind?: null | SessionKind;
include_revoked?: boolean | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_SessionDto, 'user.list_sessions', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/sessions
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* count: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
revoke_all_sessions<Config extends Alova2MethodConfig<AppResponseData_CountResp>>(
config?: Config
): Alova2Method<AppResponseData_CountResp, 'user.revoke_all_sessions', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/sessions/{session_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* session_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
revoke_session<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
session_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'user.revoke_session', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/spaces
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* // [items] start
* // [items] end
* permissions: string[]
* space: {
* allow_invite: boolean
* allow_join: boolean
* allow_join_level:
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* avatar_url?: string | null
* created_at: string
* description?: string | null
* id: string
* is_active: boolean
* is_private: boolean
* lower_name: string
* member_must_enable_2fa: boolean
* members_count: number
* name: string
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at: string
* welcome_message?: string | null
* welcome_object?: string | null
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
my_spaces<
Config extends Alova2MethodConfig<AppResponseData_Vec_MySpaceDto> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_MySpaceDto, 'user.my_spaces', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/suspensions
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* include_revoked?: boolean | null
* active?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* ends_at?: string | null
* id: string
* reason?: string | null
* revoked_at?: string | null
* starts_at: string
* suspension_type: 'temporary' | 'permanent'
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
my_suspensions<
Config extends Alova2MethodConfig<AppResponseData_Vec_SuspensionDto> & {
params: {
include_revoked?: boolean | null;
active?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_SuspensionDto, 'user.my_suspensions', Config>;
/**
* ---
*
* [GET]
*
* **path:** /users/{user_id}/profile-detail
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // target user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* accent_color?: string | null
* avatar_url: string
* banner_url?: string | null
* bio?: string | null
* company?: string | null
* display_name: string
* location?: string | null
* pronouns?: string | null
* real_name?: string | null
* show_activity?: boolean | null
* show_email?: boolean | null
* show_location?: boolean | null
* show_real_name?: boolean | null
* updated_at: string
* user_id: number
* username: string
* visibility?: null | ('Public' | 'RegisteredOnly' | 'MembersOnly' | 'Private')
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_profile_detail<
Config extends Alova2MethodConfig<AppResponseData_ProfileDetailDto> & {
pathParams: {
/**
* target user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ProfileDetailDto, 'user.get_profile_detail', Config>;
};
notifications: {
/**
* ---
*
* [GET]
*
* **path:** /me/notifications
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* type?: null | ('mention' | 'reply' | 'follow' | 'invite' | 'assignment' | 'system')
* unread?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* actor_id?: number | null
* body?: string | null
* created_at: string
* data?: null | null
* id: string
* notification_type: 'mention' | 'reply' | 'follow' | 'invite' | 'assignment' | 'system'
* read_at?: string | null
* title: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_notifications<
Config extends Alova2MethodConfig<AppResponseData_Page_NotificationDto> & {
params: {
limit?: number | null;
offset?: number | null;
type?: null | NotificationType;
unread?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_NotificationDto, 'notifications.list_notifications', Config>;
/**
* ---
*
* [GET]
*
* **path:** /me/notifications/unread-count
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* count: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unread_notifications_count<Config extends Alova2MethodConfig<AppResponseData_UnreadCountResp>>(
config?: Config
): Alova2Method<AppResponseData_UnreadCountResp, 'notifications.unread_notifications_count', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /me/notifications/{notification_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // notification id
* notification_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_notification<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* notification id
*/
notification_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'notifications.delete_notification', Config>;
};
reports: {
/**
* ---
*
* [POST]
*
* **path:** /me/reports
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* evidence?: string | null
* reason: string
* reported_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* evidence?: string | null
* id: string
* reason: string
* reported_id: number
* status: 'open' | 'under_review' | 'resolved' | 'dismissed'
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_report<
Config extends Alova2MethodConfig<AppResponseData_ReportDto> & {
data: CreateReportCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReportDto, 'reports.create_report', Config>;
};
push: {
/**
* ---
*
* [GET]
*
* **path:** /push/config
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // 前端注册 Service Worker 所需的公开参数。
* // 只有公钥是公开的(它就是浏览器 `applicationServerKey` 要的东西),私钥永远
* // 不出现在任何响应里。`enabled=false` 时前端把整个"系统通知"开关藏起来,
* // 而不是让用户点了才发现服务端没开。
* data?: {
* enabled: boolean
* public_key: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
push_config<Config extends Alova2MethodConfig<AppResponseData_PushConfigDto>>(
config?: Config
): Alova2Method<AppResponseData_PushConfigDto, 'push.push_config', Config>;
};
content: {
/**
* ---
*
* [POST]
*
* **path:** /repos/utils/commit-signature
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* when?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* email: string
* name: string
* when: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
caller_signature<
Config extends Alova2MethodConfig<AppResponseData_SignatureDto> & {
data: CallerSignatureBody;
}
>(
config: Config
): Alova2Method<AppResponseData_SignatureDto, 'content.caller_signature', Config>;
};
patches: {
/**
* ---
*
* [POST]
*
* **path:** /repos/utils/patch/parse
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = string
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* additions: number
* deletions: number
* // [items] start
* // [items] end
* files: string[]
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
patch_parse<
Config extends Alova2MethodConfig<AppResponseData_ParsedPatchDto> & {
data: string;
}
>(
config: Config
): Alova2Method<AppResponseData_ParsedPatchDto, 'patches.patch_parse', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/patch/generate
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* base: string
* head: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content: string
* size: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
patch_generate<
Config extends Alova2MethodConfig<AppResponseData_PatchDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
base: string;
head: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PatchDto, 'patches.patch_generate', Config>;
};
repos: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* avatar_url?: string | null
* default_branch: string
* description?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* license_name?: string | null
* name: string
* primary_language?: string | null
* size: number
* stars_count: number
* updated_at: string
* watchers_count: number
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_repos<
Config extends Alova2MethodConfig<AppResponseData_Page_RepoSummaryDto> & {
pathParams: {
space_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_RepoSummaryDto, 'repos.list_repos', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* default_branch?: string | null
* description?: string | null
* enable_lfs?: boolean
* init_message?: string | null
* is_private?: boolean
* license_name?: string | null
* name: string
* parent_dir_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
* allow_pull_requests: boolean
* archived_at?: string | null
* avatar_url?: string | null
* branches_count: number
* commits_count: number
* created_at: string
* default_branch: string
* description?: string | null
* enable_lfs: boolean
* git_size: number
* http_clone_url?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* last_pushed_at?: string | null
* lfs_size: number
* license_name?: string | null
* me?: null | {
* starred: boolean
* watch_mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* name: string
* object_format: string
* primary_language?: string | null
* pulls_count: number
* size: number
* ssh_clone_url?: string | null
* stars_count: number
* storage_limit_size?: number | null
* // 中间页签顺序;空数组 = 默认顺序。
* // [items] start
* // [items] end
* tab_order: string[]
* tags_count: number
* updated_at: string
* watchers_count: number
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoDto> & {
pathParams: {
space_name: string;
};
data: CreateRepoCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RepoDto, 'repos.create_repo', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
* allow_pull_requests: boolean
* archived_at?: string | null
* avatar_url?: string | null
* branches_count: number
* commits_count: number
* created_at: string
* default_branch: string
* description?: string | null
* enable_lfs: boolean
* git_size: number
* http_clone_url?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* last_pushed_at?: string | null
* lfs_size: number
* license_name?: string | null
* me?: null | {
* starred: boolean
* watch_mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* name: string
* object_format: string
* primary_language?: string | null
* pulls_count: number
* size: number
* ssh_clone_url?: string | null
* stars_count: number
* storage_limit_size?: number | null
* // 中间页签顺序;空数组 = 默认顺序。
* // [items] start
* // [items] end
* tab_order: string[]
* tags_count: number
* updated_at: string
* watchers_count: number
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepoDto, 'repos.get_repo', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_pull_requests?: boolean | null
* default_branch?: string | null
* description?: string | null
* enable_lfs?: boolean | null
* is_private?: boolean | null
* // 中间页签顺序;传空数组恢复默认顺序。
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* tab_order?: string[] | null
* website?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
* allow_pull_requests: boolean
* archived_at?: string | null
* avatar_url?: string | null
* branches_count: number
* commits_count: number
* created_at: string
* default_branch: string
* description?: string | null
* enable_lfs: boolean
* git_size: number
* http_clone_url?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* last_pushed_at?: string | null
* lfs_size: number
* license_name?: string | null
* me?: null | {
* starred: boolean
* watch_mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* name: string
* object_format: string
* primary_language?: string | null
* pulls_count: number
* size: number
* ssh_clone_url?: string | null
* stars_count: number
* storage_limit_size?: number | null
* // 中间页签顺序;空数组 = 默认顺序。
* // [items] start
* // [items] end
* tab_order: string[]
* tags_count: number
* updated_at: string
* watchers_count: number
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: UpdateRepoCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RepoDto, 'repos.update_repo', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/archive
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
* allow_pull_requests: boolean
* archived_at?: string | null
* avatar_url?: string | null
* branches_count: number
* commits_count: number
* created_at: string
* default_branch: string
* description?: string | null
* enable_lfs: boolean
* git_size: number
* http_clone_url?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* last_pushed_at?: string | null
* lfs_size: number
* license_name?: string | null
* me?: null | {
* starred: boolean
* watch_mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* name: string
* object_format: string
* primary_language?: string | null
* pulls_count: number
* size: number
* ssh_clone_url?: string | null
* stars_count: number
* storage_limit_size?: number | null
* // 中间页签顺序;空数组 = 默认顺序。
* // [items] start
* // [items] end
* tab_order: string[]
* tags_count: number
* updated_at: string
* watchers_count: number
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
archive_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepoDto, 'repos.archive_repo', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/star
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* stars: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
star_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoStarResp> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepoStarResp, 'repos.star_repo', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/star
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* stars: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unstar_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoStarResp> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepoStarResp, 'repos.unstar_repo', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/stargazers
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* avatar_url: string
* display_name: string
* starred_at: string
* user_id: number
* username: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_stargazers<
Config extends Alova2MethodConfig<AppResponseData_Vec_StargazerDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_StargazerDto, 'repos.list_stargazers', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/topics
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* name: string
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_repo_topics<
Config extends Alova2MethodConfig<AppResponseData_Vec_TopicDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_TopicDto, 'repos.list_repo_topics', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/topics/{topic_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* topic_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_topic_to_repo<
Config extends Alova2MethodConfig<AppResponseData_TopicDto> & {
pathParams: {
space_name: string;
repo_name: string;
topic_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_TopicDto, 'repos.add_topic_to_repo', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/topics/{topic_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* topic_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_topic_from_repo<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
topic_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'repos.remove_topic_from_repo', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/unarchive
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // 是否允许在本仓库创建合并请求(关闭后页签隐藏、接口拒绝)。
* allow_pull_requests: boolean
* archived_at?: string | null
* avatar_url?: string | null
* branches_count: number
* commits_count: number
* created_at: string
* default_branch: string
* description?: string | null
* enable_lfs: boolean
* git_size: number
* http_clone_url?: string | null
* id: string
* is_archived: boolean
* is_private: boolean
* last_pushed_at?: string | null
* lfs_size: number
* license_name?: string | null
* me?: null | {
* starred: boolean
* watch_mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* name: string
* object_format: string
* primary_language?: string | null
* pulls_count: number
* size: number
* ssh_clone_url?: string | null
* stars_count: number
* storage_limit_size?: number | null
* // 中间页签顺序;空数组 = 默认顺序。
* // [items] start
* // [items] end
* tab_order: string[]
* tags_count: number
* updated_at: string
* watchers_count: number
* website?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unarchive_repo<
Config extends Alova2MethodConfig<AppResponseData_RepoDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepoDto, 'repos.unarchive_repo', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/watch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* mode: 'unwatched' | 'watching' | 'ignore'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* mode: 'unwatched' | 'watching' | 'ignore'
* repo_id: string
* updated_at: string
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upsert_watch<
Config extends Alova2MethodConfig<AppResponseData_RepoWatchDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: UpsertWatchCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_RepoWatchDto, 'repos.upsert_watch', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/watchers
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* mode?: null | ('unwatched' | 'watching' | 'ignore')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* avatar_url: string
* display_name: string
* mode: 'unwatched' | 'watching' | 'ignore'
* user_id: number
* username: string
* watching_since: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_watchers<
Config extends Alova2MethodConfig<AppResponseData_Vec_WatcherDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
mode?: null | WatchMode;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_WatcherDto, 'repos.list_watchers', Config>;
};
analysis: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/analysis/code-activity
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* branch?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* authors: Array<{
* additions: number
* commits: number
* deletions: number
* email: string
* name: string
* }>
* total_additions: number
* total_commits: number
* total_deletions: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
code_activity<
Config extends Alova2MethodConfig<AppResponseData_CodeActivityDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
branch?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CodeActivityDto, 'analysis.code_activity', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/analysis/contributors
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* additions: number
* commits: number
* deletions: number
* email: string
* name: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
contributors<
Config extends Alova2MethodConfig<AppResponseData_Vec_ContributorStatDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_ContributorStatDto, 'analysis.contributors', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/analysis/languages
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* is_primary: boolean
* language: string
* percentage_bp: number
* size: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
languages_read<
Config extends Alova2MethodConfig<AppResponseData_Vec_LanguageStatDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LanguageStatDto, 'analysis.languages_read', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/analysis/languages
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* is_primary: boolean
* language: string
* percentage_bp: number
* size: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
languages<
Config extends Alova2MethodConfig<AppResponseData_Vec_LanguageStatDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LanguageStatDto, 'analysis.languages', Config>;
};
archives: {
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/archives
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* format: 'tar' | 'tar_gz' | 'tar_bz2' | 'zip'
* path_filter?: string | null
* revision: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* cache_key: string
* download_url?: string | null
* format: string
* size: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_archive<
Config extends Alova2MethodConfig<AppResponseData_ArchiveResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: ArchiveCreateCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ArchiveResultDto, 'archives.create_archive', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/archives/bundle
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* cache_key: string
* download_url?: string | null
* format: string
* size: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_bundle<
Config extends Alova2MethodConfig<AppResponseData_ArchiveResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ArchiveResultDto, 'archives.create_bundle', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/archives/{revision}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* revision: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // archive format
* format: string
* // path filter
* path_filter?: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* cache_key: string
* download_url?: string | null
* format: string
* size: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_archive<
Config extends Alova2MethodConfig<AppResponseData_ArchiveResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
revision: string;
};
params: {
/**
* archive format
*/
format: string;
/**
* path filter
*/
path_filter?: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ArchiveResultDto, 'archives.get_archive', Config>;
};
blame: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/blame
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* revision: string
* path: string
* range_start?: number | null
* range_end?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* abbreviated_oid: string
* commit_sha: string
* ending_line: number
* path?: string | null
* starting_line: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
blame<
Config extends Alova2MethodConfig<AppResponseData_Vec_BlameRangeDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
revision: string;
path: string;
range_start?: number | null;
range_end?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_BlameRangeDto, 'blame.blame', Config>;
};
blobs: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/blobs/{oid}/content
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* oid: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* data: number[]
* is_binary: boolean
* oid: string
* size: number
* truncated: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
blob_content<
Config extends Alova2MethodConfig<AppResponseData_BlobContentDto> & {
pathParams: {
space_name: string;
repo_name: string;
oid: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BlobContentDto, 'blobs.blob_content', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/blobs/{oid}/metadata
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* oid: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* is_binary: boolean
* is_lfs_pointer: boolean
* lfs?: null | {
* oid?: string | null
* size?: number | null
* version: string
* }
* oid: string
* size: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
blob_metadata<
Config extends Alova2MethodConfig<AppResponseData_BlobMetaDto> & {
pathParams: {
space_name: string;
repo_name: string;
oid: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BlobMetaDto, 'blobs.blob_metadata', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/lfs-pointers
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* revision: string
* limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* oid?: string | null
* size?: number | null
* version: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_lfs_pointers<
Config extends Alova2MethodConfig<AppResponseData_Vec_LfsPointerDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
revision: string;
limit?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_LfsPointerDto, 'blobs.list_lfs_pointers', Config>;
};
protection: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* block_on_change_requested_reviews: boolean
* block_on_outdated_branch: boolean
* block_on_rejected_reviews: boolean
* branch_pattern: string
* created_at: string
* dismiss_stale_approvals: boolean
* enable_approvals_whitelist: boolean
* enable_force_push: boolean
* enable_merge_whitelist: boolean
* enable_push: boolean
* enable_push_whitelist: boolean
* id: string
* protected_file_patterns: string
* push_whitelist_deploy_keys: boolean
* repo_id: string
* require_signed_commits: boolean
* required_approvals: number
* required_status_contexts: string
* unprotected_file_patterns: string
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_policies<
Config extends Alova2MethodConfig<AppResponseData_Vec_BranchPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_BranchPolicyDto, 'protection.list_policies', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* block_on_change_requested_reviews?: boolean | null
* block_on_outdated_branch?: boolean | null
* block_on_rejected_reviews?: boolean | null
* branch_pattern: string
* dismiss_stale_approvals?: boolean | null
* enable_approvals_whitelist?: boolean | null
* enable_force_push?: boolean | null
* enable_merge_whitelist?: boolean | null
* enable_push?: boolean | null
* enable_push_whitelist?: boolean | null
* protected_file_patterns?: string | null
* require_signed_commits?: boolean | null
* required_approvals?: number | null
* required_status_contexts?: string | null
* unprotected_file_patterns?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* block_on_change_requested_reviews: boolean
* block_on_outdated_branch: boolean
* block_on_rejected_reviews: boolean
* branch_pattern: string
* created_at: string
* dismiss_stale_approvals: boolean
* enable_approvals_whitelist: boolean
* enable_force_push: boolean
* enable_merge_whitelist: boolean
* enable_push: boolean
* enable_push_whitelist: boolean
* id: string
* protected_file_patterns: string
* push_whitelist_deploy_keys: boolean
* repo_id: string
* require_signed_commits: boolean
* required_approvals: number
* required_status_contexts: string
* unprotected_file_patterns: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_policy<
Config extends Alova2MethodConfig<AppResponseData_BranchPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateBranchPolicyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BranchPolicyDto, 'protection.create_policy', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* block_on_change_requested_reviews: boolean
* block_on_outdated_branch: boolean
* block_on_rejected_reviews: boolean
* branch_pattern: string
* created_at: string
* dismiss_stale_approvals: boolean
* enable_approvals_whitelist: boolean
* enable_force_push: boolean
* enable_merge_whitelist: boolean
* enable_push: boolean
* enable_push_whitelist: boolean
* id: string
* protected_file_patterns: string
* push_whitelist_deploy_keys: boolean
* repo_id: string
* require_signed_commits: boolean
* required_approvals: number
* required_status_contexts: string
* unprotected_file_patterns: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_policy<
Config extends Alova2MethodConfig<AppResponseData_BranchPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BranchPolicyDto, 'protection.get_policy', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_policy<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'protection.delete_policy', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* block_on_change_requested_reviews?: boolean | null
* block_on_outdated_branch?: boolean | null
* block_on_rejected_reviews?: boolean | null
* branch_pattern?: string | null
* dismiss_stale_approvals?: boolean | null
* enable_approvals_whitelist?: boolean | null
* enable_force_push?: boolean | null
* enable_merge_whitelist?: boolean | null
* enable_push?: boolean | null
* enable_push_whitelist?: boolean | null
* protected_file_patterns?: string | null
* require_signed_commits?: boolean | null
* required_approvals?: number | null
* required_status_contexts?: string | null
* unprotected_file_patterns?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* block_on_change_requested_reviews: boolean
* block_on_outdated_branch: boolean
* block_on_rejected_reviews: boolean
* branch_pattern: string
* created_at: string
* dismiss_stale_approvals: boolean
* enable_approvals_whitelist: boolean
* enable_force_push: boolean
* enable_merge_whitelist: boolean
* enable_push: boolean
* enable_push_whitelist: boolean
* id: string
* protected_file_patterns: string
* push_whitelist_deploy_keys: boolean
* repo_id: string
* require_signed_commits: boolean
* required_approvals: number
* required_status_contexts: string
* unprotected_file_patterns: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_policy<
Config extends Alova2MethodConfig<AppResponseData_BranchPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
data: UpdateBranchPolicyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BranchPolicyDto, 'protection.update_policy', Config>;
};
branch_protection: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}/whitelists
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* group_id?: string | null
* id: string
* kind: 'Push' | 'Merge' | 'Approval'
* policy_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id?: number | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_branch_whitelists<
Config extends Alova2MethodConfig<AppResponseData_Vec_BranchWhitelistDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_BranchWhitelistDto, 'branch_protection.list_branch_whitelists', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}/whitelists
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* group_id?: string | null
* kind: 'Push' | 'Merge' | 'Approval'
* user_id?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* group_id?: string | null
* id: string
* kind: 'Push' | 'Merge' | 'Approval'
* policy_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_branch_whitelist<
Config extends Alova2MethodConfig<AppResponseData_BranchWhitelistDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
data: AddBranchWhitelistCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BranchWhitelistDto, 'branch_protection.add_branch_whitelist', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/branch-protection/{policy_id}/whitelists/{whitelist_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* whitelist_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_branch_whitelist<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
whitelist_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'branch_protection.remove_branch_whitelist', Config>;
};
branches: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/branches
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* commit_sha: string
* created_at: string
* deleted_at?: string | null
* is_deleted: boolean
* is_protected: boolean
* name: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_branches<
Config extends Alova2MethodConfig<AppResponseData_Page_BranchDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_BranchDto, 'branches.list_branches', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/branches
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* start_point?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* commit_sha: string
* created_at: string
* deleted_at?: string | null
* is_deleted: boolean
* is_protected: boolean
* name: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_branch<
Config extends Alova2MethodConfig<AppResponseData_BranchDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateBranchCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BranchDto, 'branches.create_branch', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/branches/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* commit_sha: string
* created_at: string
* deleted_at?: string | null
* is_deleted: boolean
* is_protected: boolean
* name: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_branch<
Config extends Alova2MethodConfig<AppResponseData_BranchDto> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BranchDto, 'branches.get_branch', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/branches/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* force?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_branch<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
params: {
force?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'branches.delete_branch', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/branches/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* new_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
rename_branch<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
data: RenameBranchCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'branches.rename_branch', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/branches/{name}/default
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_default_branch<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'branches.set_default_branch', Config>;
};
codeComments: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* path?: string | null
* revision?: string | null
* resolved?: boolean | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_code_comments<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
path?: string | null;
revision?: string | null;
resolved?: boolean | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'codeComments.list_code_comments', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body: string
* // 锚定的提交;缺省使用该 revision 解析出的提交。
* commit_sha?: string | null
* line: number
* parent_id?: string | null
* path: string
* revision?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha: string
* created_at: string
* id: string
* line: number
* // 该评论锚定的提交是否仍是当前分支提示(否则视为 outdated)。
* outdated: boolean
* parent_id?: string | null
* path: string
* repo_id: string
* resolved: boolean
* resolved_by?: number | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_code_comment<
Config extends Alova2MethodConfig<AppResponseData_CodeCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateCodeCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CodeCommentDto, 'codeComments.create_code_comment', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_code_comment<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'codeComments.delete_code_comment', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments/{comment_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* comment_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha: string
* created_at: string
* id: string
* line: number
* // 该评论锚定的提交是否仍是当前分支提示(否则视为 outdated)。
* outdated: boolean
* parent_id?: string | null
* path: string
* repo_id: string
* resolved: boolean
* resolved_by?: number | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_code_comment<
Config extends Alova2MethodConfig<AppResponseData_CodeCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
comment_id: string;
};
data: UpdateCodeCommentCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CodeCommentDto, 'codeComments.update_code_comment', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments/{comment_id}/resolve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha: string
* created_at: string
* id: string
* line: number
* // 该评论锚定的提交是否仍是当前分支提示(否则视为 outdated)。
* outdated: boolean
* parent_id?: string | null
* path: string
* repo_id: string
* resolved: boolean
* resolved_by?: number | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
resolve_code_comment<
Config extends Alova2MethodConfig<AppResponseData_CodeCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CodeCommentDto, 'codeComments.resolve_code_comment', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/code-comments/{comment_id}/resolve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* comment_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* author?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* body: string
* commit_sha: string
* created_at: string
* id: string
* line: number
* // 该评论锚定的提交是否仍是当前分支提示(否则视为 outdated)。
* outdated: boolean
* parent_id?: string | null
* path: string
* repo_id: string
* resolved: boolean
* resolved_by?: number | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unresolve_code_comment<
Config extends Alova2MethodConfig<AppResponseData_CodeCommentDto> & {
pathParams: {
space_name: string;
repo_name: string;
comment_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CodeCommentDto, 'codeComments.unresolve_code_comment', Config>;
};
commits: {
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/commit-statuses
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* context: string
* description?: string | null
* sha: string
* state: 'pending' | 'success' | 'failure' | 'error'
* target_url?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* context: string
* created_at: string
* creator?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* creator_id: number
* description?: string | null
* state: 'pending' | 'success' | 'failure' | 'error'
* target_url?: string | null
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_commit_status<
Config extends Alova2MethodConfig<AppResponseData_CommitStatusDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: SetCommitStatusCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_CommitStatusDto, 'commits.set_commit_status', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/commit-statuses/{sha}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* sha: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* context: string
* created_at: string
* creator?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* creator_id: number
* description?: string | null
* state: 'pending' | 'success' | 'failure' | 'error'
* target_url?: string | null
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_commit_statuses<
Config extends Alova2MethodConfig<AppResponseData_Vec_CommitStatusDto> & {
pathParams: {
space_name: string;
repo_name: string;
sha: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_CommitStatusDto, 'commits.list_commit_statuses', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/commits
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // start revision
* revision?: string
* // path filter
* path?: string
* // max commits
* max_count?: number
* // skip commits before returning (offset)
* skip?: number
* // since date
* since?: string
* // until date
* until?: string
* // first parent only
* first_parent: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* commits: Array<{
* author_email: string
* author_name: string
* author_time: number
* committer_email: string
* committer_name: string
* committer_time: number
* id: string
* message: string
* // [items] start
* // [items] end
* parents: string[]
* tree_id: string
* }>
* diff_view_style: string
* has_more: boolean
* limit: number
* skip: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_commits<
Config extends Alova2MethodConfig<AppResponseData_CommitsPageDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
/**
* start revision
*/
revision?: string;
/**
* path filter
*/
path?: string;
/**
* max commits
*/
max_count?: number;
/**
* skip commits before returning (offset)
*/
skip?: number;
/**
* since date
*/
since?: string;
/**
* until date
*/
until?: string;
/**
* first parent only
*/
first_parent: boolean;
};
}
>(
config: Config
): Alova2Method<AppResponseData_CommitsPageDto, 'commits.list_commits', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/commits/ancestor
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* ancestor: string
* descendant: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* is_ancestor: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
is_ancestor<
Config extends Alova2MethodConfig<AppResponseData_IsAncestorResponse> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
ancestor: string;
descendant: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_IsAncestorResponse, 'commits.is_ancestor', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/commits/stats
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* revision: string
* path?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
commit_stats<
Config extends Alova2MethodConfig<null> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
revision: string;
path?: string | null;
};
}
>(
config: Config
): Alova2Method<null, 'commits.commit_stats', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/commits/{revision}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* revision: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
get_commit<
Config extends Alova2MethodConfig<null> & {
pathParams: {
space_name: string;
repo_name: string;
revision: string;
};
}
>(
config: Config
): Alova2Method<null, 'commits.get_commit', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/rev/{revision}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* revision: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: string
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
rev_parse<
Config extends Alova2MethodConfig<AppResponseData_String> & {
pathParams: {
space_name: string;
repo_name: string;
revision: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_String, 'commits.rev_parse', Config>;
};
conflicts: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/conflicts
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* base: string
* head: string
* ancestor?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* conflicts: string[]
* fast_forwardable: boolean
* mergeable: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_conflicts<
Config extends Alova2MethodConfig<AppResponseData_MergeStatusDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
base: string;
head: string;
ancestor?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_MergeStatusDto, 'conflicts.get_conflicts', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/conflicts/detail
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* base: string
* head: string
* path: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content?: string | null
* path: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
conflict_detail<
Config extends Alova2MethodConfig<AppResponseData_ConflictDetailDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
base: string;
head: string;
path: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ConflictDetailDto, 'conflicts.conflict_detail', Config>;
};
diffs: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/diff
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* base: string
* head: string
* view?: 'shortstat' | 'numstat' | 'files' | 'tree'
* use_merge_base?: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_diff<
Config extends Alova2MethodConfig<AppResponseData_Value> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
base: string;
head: string;
view?: DiffView;
use_merge_base?: boolean;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Value, 'diffs.get_diff', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/diff/for-commit/{commit}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* commit: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = null
* ```
*/
diff_for_commit<
Config extends Alova2MethodConfig<null> & {
pathParams: {
space_name: string;
repo_name: string;
commit: string;
};
}
>(
config: Config
): Alova2Method<null, 'diffs.diff_for_commit', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/diff/range
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* from: string
* to: string
* base?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: string
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
range_diff<
Config extends Alova2MethodConfig<AppResponseData_String> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
from: string;
to: string;
base?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_String, 'diffs.range_diff', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/diff/raw
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* base: string
* head: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: string
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
diff_raw<
Config extends Alova2MethodConfig<AppResponseData_String> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
base: string;
head: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_String, 'diffs.diff_raw', Config>;
};
hooks: {
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/hooks/{script}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* script: 'pre_receive' | 'post_receive' | 'update' | 'push' | 'tag' | 'merge_request'
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // [items] start
* // [items] end
* args?: string[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* exit_code: number
* stderr: string
* stdout: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
execute_script<
Config extends Alova2MethodConfig<AppResponseData_ScriptOutputDto> & {
pathParams: {
space_name: string;
repo_name: string;
script: HookEventKind;
};
data: HookExecBody;
}
>(
config: Config
): Alova2Method<AppResponseData_ScriptOutputDto, 'hooks.execute_script', Config>;
};
lfs: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/lfs/locks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* cursor?: string | null
* limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* locks?: Array<{
* id: string
* locked_at: string
* owner: {
* name: string
* }
* path: string
* }>
* next_cursor?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_locks<
Config extends Alova2MethodConfig<AppResponseData_LfsLockListResponse> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
cursor?: string | null;
limit?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_LfsLockListResponse, 'lfs.list_locks', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/lfs/locks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* oid?: string | null
* path: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* id: string
* locked_at: string
* owner: {
* name: string
* }
* path: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
lock<
Config extends Alova2MethodConfig<AppResponseData_LfsLock> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: LfsLockBody;
}
>(
config: Config
): Alova2Method<AppResponseData_LfsLock, 'lfs.lock', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/lfs/locks
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* path: string
* force?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unlock<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
path: string;
force?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'lfs.unlock', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/lfs/locks/verify
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* next_cursor?: string | null
* // [items] start
* // [items] end
* ours?: Array<{
* id: string
* locked_at: string
* owner: {
* name: string
* }
* path: string
* }>
* // [items] start
* // [items] end
* theirs?: Array<{
* id: string
* locked_at: string
* owner: {
* name: string
* }
* path: string
* }>
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
verify_locks<
Config extends Alova2MethodConfig<AppResponseData_LfsVerifyLocksResponse> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_LfsVerifyLocksResponse, 'lfs.verify_locks', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/lfs/locks/{lock_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* lock_id: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* force?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unlock_by_id<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
lock_id: string;
};
params: {
force?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'lfs.unlock_by_id', Config>;
};
logs: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/path-log
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* commit_hash: string
* target_dir: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* author: string
* date: string
* path: string
* short_sha: string
* subject: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
path_log<
Config extends Alova2MethodConfig<AppResponseData_Vec_PathLogEntryDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
commit_hash: string;
target_dir: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PathLogEntryDto, 'logs.path_log', Config>;
};
reviews: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/requested-reviewers
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* requested_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* required: boolean
* review_id?: string | null
* state: 'requested' | 'approved' | 'changes_requested' | 'commented' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_requested_reviewers<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullReviewerDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullReviewerDto, 'reviews.list_requested_reviewers', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/requested-reviewers
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* // 是否计入必需审批人数。
* required?: boolean
* // 用户名或 UUID。
* // [items] start
* // [items] end
* reviewers: string[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* requested_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* required: boolean
* review_id?: string | null
* state: 'requested' | 'approved' | 'changes_requested' | 'commented' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
request_reviewers<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullReviewerDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: RequestReviewersCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullReviewerDto, 'reviews.request_reviewers', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/requested-reviewers/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* requested_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* required: boolean
* review_id?: string | null
* state: 'requested' | 'approved' | 'changes_requested' | 'commented' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_requested_reviewer<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullReviewerDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullReviewerDto, 'reviews.delete_requested_reviewer', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reviews
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* comment_count: number
* commit_sha: string
* content?: string | null
* created_at: string
* id: string
* official: boolean
* pull_request_id: string
* state: 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_reviews<
Config extends Alova2MethodConfig<AppResponseData_Vec_PullReviewDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_PullReviewDto, 'reviews.list_reviews', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reviews
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* // PR 编号(`12`)或 UUID。
* pull_ref: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body?: string | null
* // [items] start
* // [items] end
* comments?: Array<{
* body?: string | null
* line: number
* path: string
* side?: string | null
* }>
* state: 'approve' | 'request_changes' | 'comment' | 'pending'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* comment_count: number
* commit_sha: string
* content?: string | null
* created_at: string
* id: string
* official: boolean
* pull_request_id: string
* state: 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
submit_review<
Config extends Alova2MethodConfig<AppResponseData_PullReviewDto> & {
pathParams: {
space_name: string;
repo_name: string;
/**
* PR 编号(`12`)或 UUID。
*/
pull_ref: string;
};
data: SubmitReviewCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullReviewDto, 'reviews.submit_review', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reviews/{review_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* review_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* comment_count: number
* commit_sha: string
* content?: string | null
* created_at: string
* id: string
* official: boolean
* pull_request_id: string
* state: 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_review<
Config extends Alova2MethodConfig<AppResponseData_PullReviewDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
review_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullReviewDto, 'reviews.get_review', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reviews/{review_id}/dismiss
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* review_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* comment_count: number
* commit_sha: string
* content?: string | null
* created_at: string
* id: string
* official: boolean
* pull_request_id: string
* state: 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
dismiss_review<
Config extends Alova2MethodConfig<AppResponseData_PullReviewDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
review_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_PullReviewDto, 'reviews.dismiss_review', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/pulls/{pull_ref}/reviews/{review_id}/submit
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* pull_ref: string
* review_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* body?: string | null
* // [items] start
* // [items] end
* comments?: Array<{
* body?: string | null
* line: number
* path: string
* side?: string | null
* }>
* state: 'approve' | 'request_changes' | 'comment' | 'pending'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* comment_count: number
* commit_sha: string
* content?: string | null
* created_at: string
* id: string
* official: boolean
* pull_request_id: string
* state: 'approved' | 'changes_requested' | 'commented' | 'pending' | 'dismissed'
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
publish_review<
Config extends Alova2MethodConfig<AppResponseData_PullReviewDto> & {
pathParams: {
space_name: string;
repo_name: string;
pull_ref: string;
review_id: string;
};
data: SubmitReviewCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_PullReviewDto, 'reviews.publish_review', Config>;
};
releases: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/releases
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* // 仅返回草稿(true)或仅返回已发布(false);缺省返回全部。
* draft?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_releases<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
/**
* 仅返回草稿(true)或仅返回已发布(false);缺省返回全部。
*/
draft?: boolean | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'releases.list_releases', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/releases
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content?: string | null
* is_draft?: boolean | null
* is_prerelease?: boolean | null
* tag_name: string
* target?: string | null
* title?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content?: string | null
* created_at: string
* id: string
* is_draft: boolean
* is_prerelease: boolean
* num_commits: number
* publisher?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* publisher_name: string
* repo_id: string
* sha: string
* tag_name: string
* target: string
* title: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_release<
Config extends Alova2MethodConfig<AppResponseData_ReleaseDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateReleaseCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReleaseDto, 'releases.create_release', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/releases/{tag}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* tag: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content?: string | null
* created_at: string
* id: string
* is_draft: boolean
* is_prerelease: boolean
* num_commits: number
* publisher?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* publisher_name: string
* repo_id: string
* sha: string
* tag_name: string
* target: string
* title: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_release<
Config extends Alova2MethodConfig<AppResponseData_ReleaseDto> & {
pathParams: {
space_name: string;
repo_name: string;
tag: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_ReleaseDto, 'releases.get_release', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/releases/{tag}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* tag: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_release<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
tag: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'releases.delete_release', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/releases/{tag}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* tag: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* content?: string | null
* is_draft?: boolean | null
* is_prerelease?: boolean | null
* title?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* content?: string | null
* created_at: string
* id: string
* is_draft: boolean
* is_prerelease: boolean
* num_commits: number
* publisher?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* publisher_name: string
* repo_id: string
* sha: string
* tag_name: string
* target: string
* title: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_release<
Config extends Alova2MethodConfig<AppResponseData_ReleaseDto> & {
pathParams: {
space_name: string;
repo_name: string;
tag: string;
};
data: UpdateReleaseCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_ReleaseDto, 'releases.update_release', Config>;
};
remotes: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/remotes
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* fetch_url?: string | null
* name: string
* push_url?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_remotes<
Config extends Alova2MethodConfig<AppResponseData_Vec_RemoteDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_RemoteDto, 'remotes.list_remotes', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/remotes/fetch
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* auth?: null | {
* token?: string | null
* username?: string | null
* }
* remote: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* new: string[]
* // [items] start
* // [items] end
* updated: string[]
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
fetch<
Config extends Alova2MethodConfig<AppResponseData_FetchResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: RemoteFetchBody;
}
>(
config: Config
): Alova2Method<AppResponseData_FetchResultDto, 'remotes.fetch', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/remotes/import
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* auth?: null | {
* token?: string | null
* username?: string | null
* }
* url: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* commit_count: number
* default_branch: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
clone_import<
Config extends Alova2MethodConfig<AppResponseData_ImportResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: RemoteImportBody;
}
>(
config: Config
): Alova2Method<AppResponseData_ImportResultDto, 'remotes.clone_import', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/remotes/push
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* auth?: null | {
* token?: string | null
* username?: string | null
* }
* refspec?: string | null
* remote: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* pushed: string[]
* // [items] start
* // [items] end
* rejected: string[]
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
push<
Config extends Alova2MethodConfig<AppResponseData_PushResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: RemotePushBody;
}
>(
config: Config
): Alova2Method<AppResponseData_PushResultDto, 'remotes.push', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /repos/{space_name}/{repo_name}/remotes/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* url: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upsert_remote<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
data: RemoteAddBody;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'remotes.upsert_remote', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/remotes/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'remotes.remove', Config>;
};
signatures: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/signatures/commit/{sha}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* sha: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* error_message?: string | null
* key_id?: string | null
* signed: boolean
* signer?: string | null
* valid: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
verify_commit<
Config extends Alova2MethodConfig<AppResponseData_VerifyResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
sha: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VerifyResultDto, 'signatures.verify_commit', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/signatures/tag/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* error_message?: string | null
* key_id?: string | null
* signed: boolean
* signer?: string | null
* valid: boolean
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
verify_tag<
Config extends Alova2MethodConfig<AppResponseData_VerifyResultDto> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_VerifyResultDto, 'signatures.verify_tag', Config>;
};
submodules: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/submodules
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* revision: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* branch?: string | null
* commit_sha?: string | null
* path: string
* url: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
submodule_list<
Config extends Alova2MethodConfig<AppResponseData_Vec_SubmoduleDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
revision: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_SubmoduleDto, 'submodules.submodule_list', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/submodules/resolve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* revision: string
* path: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: string
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
submodule_resolve<
Config extends Alova2MethodConfig<AppResponseData_String> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
revision: string;
path: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_String, 'submodules.submodule_resolve', Config>;
};
tag_protection: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* name_pattern: string
* repo_id: string
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_policies<
Config extends Alova2MethodConfig<AppResponseData_Vec_TagPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_TagPolicyDto, 'tag_protection.list_policies', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name_pattern: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name_pattern: string
* repo_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_policy<
Config extends Alova2MethodConfig<AppResponseData_TagPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateTagPolicyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TagPolicyDto, 'tag_protection.create_policy', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name_pattern: string
* repo_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_policy<
Config extends Alova2MethodConfig<AppResponseData_TagPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_TagPolicyDto, 'tag_protection.get_policy', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_policy<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'tag_protection.delete_policy', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name_pattern?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name_pattern: string
* repo_id: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_policy<
Config extends Alova2MethodConfig<AppResponseData_TagPolicyDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
data: UpdateTagPolicyCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TagPolicyDto, 'tag_protection.update_policy', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}/whitelists
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* policy_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_tag_whitelists<
Config extends Alova2MethodConfig<AppResponseData_Vec_TagWhitelistDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_TagWhitelistDto, 'tag_protection.list_tag_whitelists', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}/whitelists
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* policy_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_tag_whitelist<
Config extends Alova2MethodConfig<AppResponseData_TagWhitelistDto> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
};
data: AddTagWhitelistCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TagWhitelistDto, 'tag_protection.add_tag_whitelist', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/tag-protection/{policy_id}/whitelists/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* policy_id: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_tag_whitelist<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
policy_id: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'tag_protection.remove_tag_whitelist', Config>;
};
tags: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tags
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* created_at?: string | null
* message?: string | null
* name: string
* tag_type: 'Lightweight' | 'Annotated'
* tagger_email?: string | null
* tagger_name?: string | null
* target_sha: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_tags<
Config extends Alova2MethodConfig<AppResponseData_Page_TagDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page_TagDto, 'tags.list_tags', Config>;
/**
* ---
*
* [POST]
*
* **path:** /repos/{space_name}/{repo_name}/tags
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* annotated?: boolean
* message?: string | null
* name: string
* target: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at?: string | null
* message?: string | null
* name: string
* tag_type: 'Lightweight' | 'Annotated'
* tagger_email?: string | null
* tagger_name?: string | null
* target_sha: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_tag<
Config extends Alova2MethodConfig<AppResponseData_TagDto> & {
pathParams: {
space_name: string;
repo_name: string;
};
data: CreateTagCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TagDto, 'tags.create_tag', Config>;
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tags/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at?: string | null
* message?: string | null
* name: string
* tag_type: 'Lightweight' | 'Annotated'
* tagger_email?: string | null
* tagger_name?: string | null
* target_sha: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_tag<
Config extends Alova2MethodConfig<AppResponseData_TagDto> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_TagDto, 'tags.get_tag', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /repos/{space_name}/{repo_name}/tags/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_tag<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
repo_name: string;
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'tags.delete_tag', Config>;
};
trees: {
/**
* ---
*
* [GET]
*
* **path:** /repos/{space_name}/{repo_name}/tree/{revision}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* repo_name: string
* revision: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* path?: string
* recurse?: boolean
* resolve?: boolean
* show_trees?: boolean
* view?: null | ('entries' | 'last_updated')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_tree<
Config extends Alova2MethodConfig<AppResponseData_Value> & {
pathParams: {
space_name: string;
repo_name: string;
revision: string;
};
params: {
path?: string;
recurse?: boolean;
resolve?: boolean;
show_trees?: boolean;
view?: null | TreeView;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Value, 'trees.get_tree', Config>;
};
space: {
/**
* ---
*
* [GET]
*
* **path:** /spaces
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_spaces<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_spaces', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_invite?: boolean
* allow_join?: boolean
* allow_join_level?:
* | null
* | (
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* )
* avatar_url?: string | null
* description?: string | null
* is_private?: boolean
* member_must_enable_2fa?: boolean
* name: string
* welcome_message?: string | null
* welcome_object?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_invite: boolean
* allow_join: boolean
* allow_join_level:
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* avatar_url?: string | null
* created_at: string
* description?: string | null
* id: string
* is_active: boolean
* is_private: boolean
* lower_name: string
* member_must_enable_2fa: boolean
* members_count: number
* name: string
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at: string
* welcome_message?: string | null
* welcome_object?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_space<
Config extends Alova2MethodConfig<AppResponseData_SpaceDto> & {
data: CreateSpaceCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_SpaceDto, 'space.create_space', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/explore
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* q?: string | null
* sort?: string | null
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
explore_spaces<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
params: {
q?: string | null;
sort?: string | null;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.explore_spaces', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/invites/accept
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
accept_invite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: AcceptInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.accept_invite', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/invites/reject
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* code: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
reject_invite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
data: AcceptInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.reject_invite', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_invite: boolean
* allow_join: boolean
* allow_join_level:
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* avatar_url?: string | null
* created_at: string
* description?: string | null
* id: string
* is_active: boolean
* is_private: boolean
* lower_name: string
* member_must_enable_2fa: boolean
* members_count: number
* name: string
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at: string
* welcome_message?: string | null
* welcome_object?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_space<
Config extends Alova2MethodConfig<AppResponseData_SpaceDto> & {
pathParams: {
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_SpaceDto, 'space.get_space', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_space<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.delete_space', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_invite?: boolean | null
* allow_join?: boolean | null
* allow_join_level?:
* | null
* | (
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* )
* description?: string | null
* is_private?: boolean | null
* member_must_enable_2fa?: boolean | null
* name?: string | null
* welcome_message?: string | null
* welcome_object?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_invite: boolean
* allow_join: boolean
* allow_join_level:
* | 'None'
* | 'NeedMailActive'
* | 'NeedMailActiveAndLastOneMid'
* | 'NeedMailActiveAndLastOneHours'
* | 'NeedMailActiveAndPhoneActive'
* avatar_url?: string | null
* created_at: string
* description?: string | null
* id: string
* is_active: boolean
* is_private: boolean
* lower_name: string
* member_must_enable_2fa: boolean
* members_count: number
* name: string
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* updated_at: string
* welcome_message?: string | null
* welcome_object?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_space<
Config extends Alova2MethodConfig<AppResponseData_SpaceDto> & {
pathParams: {
space_name: string;
};
data: UpdateSpaceCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_SpaceDto, 'space.update_space', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/bans
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_bans<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_bans', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/bans
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_comment_any?: boolean | null
* allow_push_repo?: boolean | null
* allow_speak?: boolean | null
* expires_at?: string | null
* reason?: string | null
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_comment_any: boolean
* allow_push_repo: boolean
* allow_speak: boolean
* banned_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* created_at: string
* expires_at?: string | null
* reason?: string | null
* space_id: string
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
ban_user<
Config extends Alova2MethodConfig<AppResponseData_BanDto> & {
pathParams: {
space_name: string;
};
data: BanUserCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BanDto, 'space.ban_user', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/bans/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_comment_any: boolean
* allow_push_repo: boolean
* allow_speak: boolean
* banned_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* created_at: string
* expires_at?: string | null
* reason?: string | null
* space_id: string
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_ban<
Config extends Alova2MethodConfig<AppResponseData_BanDto> & {
pathParams: {
space_name: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_BanDto, 'space.get_ban', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/bans/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unban_user<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.unban_user', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/bans/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_comment_any?: boolean | null
* allow_push_repo?: boolean | null
* allow_speak?: boolean | null
* expires_at?: string | null
* reason?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_comment_any: boolean
* allow_push_repo: boolean
* allow_speak: boolean
* banned_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* created_at: string
* expires_at?: string | null
* reason?: string | null
* space_id: string
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_ban<
Config extends Alova2MethodConfig<AppResponseData_BanDto> & {
pathParams: {
space_name: string;
user_id: number;
};
data: UpdateBanCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_BanDto, 'space.update_ban', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/dir
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* parent_id?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* archived_at?: string | null
* // [items] start
* // [items] end
* children: Array<{
* archived_at?: string | null
* // [items] start
* // [cycle] $.data.[].children.[]
* // [items] end
* children: DirNodeDto[]
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }>
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_space_dir_tree<
Config extends Alova2MethodConfig<AppResponseData_Vec_DirNodeDto> & {
pathParams: {
space_name: string;
};
params: {
parent_id?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_DirNodeDto, 'space.get_space_dir_tree', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/dir
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* parent_dir_id?: string | null
* position?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived_at?: string | null
* // [items] start
* // [items] end
* children: Array<{
* archived_at?: string | null
* // [items] start
* // [cycle] $.data.children.[]
* // [items] end
* children: DirNodeDto[]
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }>
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_dir_node<
Config extends Alova2MethodConfig<AppResponseData_DirNodeDto> & {
pathParams: {
space_name: string;
};
data: CreateDirCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DirNodeDto, 'space.create_dir_node', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/dir/repair-parents
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* fixed: number
* scanned: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
repair_dir_parents<
Config extends Alova2MethodConfig<AppResponseData_RepairDirResp> & {
pathParams: {
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_RepairDirResp, 'space.repair_dir_parents', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/dir/{dir_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived_at?: string | null
* // [items] start
* // [items] end
* children: Array<{
* archived_at?: string | null
* // [items] start
* // [cycle] $.data.children.[]
* // [items] end
* children: DirNodeDto[]
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }>
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_dir_node<
Config extends Alova2MethodConfig<AppResponseData_DirNodeDto> & {
pathParams: {
space_name: string;
dir_id: string;
};
data: UpdateDirCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DirNodeDto, 'space.update_dir_node', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/groups
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* allow_mask: number
* deny_mask: number
* dir_id: string
* group_id: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_dir_group_overwrites<
Config extends Alova2MethodConfig<AppResponseData_Vec_GroupOverwriteDto> & {
pathParams: {
space_name: string;
dir_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_GroupOverwriteDto, 'space.list_dir_group_overwrites', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* group_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_mask: number
* deny_mask: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_mask: number
* deny_mask: number
* dir_id: string
* group_id: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_dir_group_overwrite<
Config extends Alova2MethodConfig<AppResponseData_GroupOverwriteDto> & {
pathParams: {
space_name: string;
dir_id: string;
group_id: string;
};
data: SetOverwriteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_GroupOverwriteDto, 'space.set_dir_group_overwrite', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_dir_group_overwrite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
dir_id: string;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.remove_dir_group_overwrite', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/users
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* allow_mask: number
* deny_mask: number
* dir_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_dir_user_overwrites<
Config extends Alova2MethodConfig<AppResponseData_Vec_UserOverwriteDto> & {
pathParams: {
space_name: string;
dir_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_UserOverwriteDto, 'space.list_dir_user_overwrites', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/users/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* user_id: number
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* allow_mask: number
* deny_mask: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* allow_mask: number
* deny_mask: number
* dir_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* user_id: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_dir_user_overwrite<
Config extends Alova2MethodConfig<AppResponseData_UserOverwriteDto> & {
pathParams: {
space_name: string;
dir_id: string;
user_id: number;
};
data: SetOverwriteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_UserOverwriteDto, 'space.set_dir_user_overwrite', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/overwrites/users/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_dir_user_overwrite<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
dir_id: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.remove_dir_user_overwrite', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/dir/{dir_id}/position
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* dir_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* parent_dir_id?: string | null
* position?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* archived_at?: string | null
* // [items] start
* // [items] end
* children: Array<{
* archived_at?: string | null
* // [items] start
* // [cycle] $.data.children.[]
* // [items] end
* children: DirNodeDto[]
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }>
* color?: string | null
* created_at: string
* created_by_id: number
* icon?: string | null
* id: string
* is_archived: boolean
* kind: 'Dir' | 'Object'
* name: string
* parent_dir_id?: string | null
* position: number
* purpose?: string | null
* topic?: string | null
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
move_dir_node<
Config extends Alova2MethodConfig<AppResponseData_DirNodeDto> & {
pathParams: {
space_name: string;
dir_id: string;
};
data: MoveDirCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_DirNodeDto, 'space.move_dir_node', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/groups
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_groups<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_groups', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/groups
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* color?: string | null
* icon_hash?: string | null
* name: string
* // [items] start
* // [items] end
* permissions?: string[]
* position?: number | null
* unicode_emoji?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* created_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* icon_hash?: string | null
* id: string
* name: string
* // [items] start
* // [items] end
* permissions: string[]
* position: number
* space_id: string
* unicode_emoji?: string | null
* updated_at?: string | null
* version: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_group<
Config extends Alova2MethodConfig<AppResponseData_GroupDto> & {
pathParams: {
space_name: string;
};
data: CreateGroupCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_GroupDto, 'space.create_group', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* created_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* icon_hash?: string | null
* id: string
* name: string
* // [items] start
* // [items] end
* permissions: string[]
* position: number
* space_id: string
* unicode_emoji?: string | null
* updated_at?: string | null
* version: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_group<
Config extends Alova2MethodConfig<AppResponseData_GroupDto> & {
pathParams: {
space_name: string;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_GroupDto, 'space.get_group', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_group<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.delete_group', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* group_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* color?: string | null
* icon_hash?: string | null
* name?: string | null
* // [params1] start
* // [items] start
* // [items] end
* // [params1] end
* permissions?: string[] | null
* position?: number | null
* unicode_emoji?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* color: string
* created_at: string
* created_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* icon_hash?: string | null
* id: string
* name: string
* // [items] start
* // [items] end
* permissions: string[]
* position: number
* space_id: string
* unicode_emoji?: string | null
* updated_at?: string | null
* version: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_group<
Config extends Alova2MethodConfig<AppResponseData_GroupDto> & {
pathParams: {
space_name: string;
group_id: string;
};
data: UpdateGroupCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_GroupDto, 'space.update_group', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/groups/{group_id}/join
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
join_group_self<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.join_group_self', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/groups/{group_id}/join
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
leave_group_self<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.leave_group_self', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/images/{kind}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null | {
* bytes: number
* format: 'jpg' | 'png' | 'webp' | 'gif'
* height?: number | null
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* space_id: string
* updated_at: string
* url: string
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_space_image<
Config extends Alova2MethodConfig<AppResponseData_Option_SpaceImageDto> & {
pathParams: {
space_name: string;
kind: SpaceImageKind;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Option_SpaceImageDto, 'space.get_space_image', Config>;
/**
* ---
*
* [PUT]
*
* **path:** /spaces/{space_name}/images/{kind}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* width?: number | null
* height?: number | null
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = number[]
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* bytes: number
* format: 'jpg' | 'png' | 'webp' | 'gif'
* height?: number | null
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* space_id: string
* updated_at: string
* url: string
* width?: number | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
upload_space_image<
Config extends Alova2MethodConfig<AppResponseData_SpaceImageDto> & {
pathParams: {
space_name: string;
kind: SpaceImageKind;
};
params: {
width?: number | null;
height?: number | null;
};
data: number[];
}
>(
config: Config
): Alova2Method<AppResponseData_SpaceImageDto, 'space.upload_space_image', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/images/{kind}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_space_image<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
kind: SpaceImageKind;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.delete_space_image', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/images/{kind}/file
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* kind: 'avatar' | 'banner' | 'invite_banner' | 'embed_splash'
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // [params2] start
* // Which representation a read endpoint should hand back.
* // [params2] end
* variant?: null | ('preview' | 'original')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = unknown
* ```
*/
get_space_image_file<
Config extends Alova2MethodConfig<unknown> & {
pathParams: {
space_name: string;
kind: SpaceImageKind;
};
params: {
variant?: null | ImageVariant;
};
}
>(
config: Config
): Alova2Method<unknown, 'space.get_space_image_file', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/invites
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_invites<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_invites', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/invites
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* email?: string | null
* expires_at?: string | null
* // [items] start
* // [items] end
* group_ids?: string[]
* user_id?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* accepted_at?: string | null
* created_at: string
* email: string
* expires_at?: string | null
* // [items] start
* // [items] end
* groups: string[]
* id: string
* revoked_at?: string | null
* space_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_invite<
Config extends Alova2MethodConfig<AppResponseData_InviteDto> & {
pathParams: {
space_name: string;
};
data: CreateInviteCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_InviteDto, 'space.create_invite', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/invites/{invite_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* invite_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* accepted_at?: string | null
* created_at: string
* email: string
* expires_at?: string | null
* // [items] start
* // [items] end
* groups: string[]
* id: string
* revoked_at?: string | null
* space_id: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
revoke_invite<
Config extends Alova2MethodConfig<AppResponseData_InviteDto> & {
pathParams: {
space_name: string;
invite_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_InviteDto, 'space.revoke_invite', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/join-requests
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* status?: null | ('pending' | 'approved' | 'rejected' | 'withdrawn')
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_join_requests<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
status?: null | SpaceJoinRequestStatus;
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_join_requests', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/join-requests
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* note?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* decided_at?: string | null
* decided_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* id: string
* note?: string | null
* space_id: string
* status: 'pending' | 'approved' | 'rejected' | 'withdrawn'
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_join_request<
Config extends Alova2MethodConfig<AppResponseData_JoinRequestDto> & {
pathParams: {
space_name: string;
};
data: CreateJoinRequestCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_JoinRequestDto, 'space.create_join_request', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/join-requests/{request_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* request_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
withdraw_join_request<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
request_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.withdraw_join_request', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/join-requests/{request_id}/approve
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* request_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* decided_at?: string | null
* decided_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* id: string
* note?: string | null
* space_id: string
* status: 'pending' | 'approved' | 'rejected' | 'withdrawn'
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
approve_join_request<
Config extends Alova2MethodConfig<AppResponseData_JoinRequestDto> & {
pathParams: {
space_name: string;
request_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_JoinRequestDto, 'space.approve_join_request', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/join-requests/{request_id}/reject
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* request_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* decided_at?: string | null
* decided_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* id: string
* note?: string | null
* space_id: string
* status: 'pending' | 'approved' | 'rejected' | 'withdrawn'
* updated_at: string
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
reject_join_request<
Config extends Alova2MethodConfig<AppResponseData_JoinRequestDto> & {
pathParams: {
space_name: string;
request_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_JoinRequestDto, 'space.reject_join_request', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/join-rules
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* enabled: boolean
* group_id: string
* id: string
* matcher: string
* trigger: 'issue_reaction' | 'issue_comment_reaction'
* updated_at?: string | null
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_join_rules<
Config extends Alova2MethodConfig<AppResponseData_Vec_JoinRuleDto> & {
pathParams: {
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_JoinRuleDto, 'space.list_join_rules', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/join-rules
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* group_id: string
* matcher?: string
* trigger?: 'issue_reaction' | 'issue_comment_reaction'
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* enabled: boolean
* group_id: string
* id: string
* matcher: string
* trigger: 'issue_reaction' | 'issue_comment_reaction'
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_join_rule<
Config extends Alova2MethodConfig<AppResponseData_JoinRuleDto> & {
pathParams: {
space_name: string;
};
data: CreateJoinRuleCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_JoinRuleDto, 'space.create_join_rule', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/join-rules/{rule_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* rule_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_join_rule<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
rule_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.delete_join_rule', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/join-rules/{rule_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* rule_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* enabled?: boolean | null
* matcher?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* enabled: boolean
* group_id: string
* id: string
* matcher: string
* trigger: 'issue_reaction' | 'issue_comment_reaction'
* updated_at?: string | null
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_join_rule<
Config extends Alova2MethodConfig<AppResponseData_JoinRuleDto> & {
pathParams: {
space_name: string;
rule_id: string;
};
data: UpdateJoinRuleCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_JoinRuleDto, 'space.update_join_rule', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* sort?: string | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* // [items] start
* // [items] end
* items: Array<{
* archived: boolean
* created_at: string
* id: string
* last_reply_at?: string | null
* last_reply_id?: string | null
* locked: boolean
* name?: string | null
* owner?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* owner_id: number
* participant_count: number
* reply_count: number
* room_id: string
* root_message_id: string
* updated_at: string
* }>
* limit: number
* offset: number
* total: number
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_space_members<
Config extends Alova2MethodConfig<AppResponseData_Page> & {
pathParams: {
space_name: string;
};
params: {
limit?: number | null;
offset?: number | null;
sort?: string | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Page, 'space.list_space_members', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/members
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* alias_avatar_url?: string | null
* alias_name?: string | null
* hide_muted_channels?: boolean | null
* message_notifications?: null | ('All' | 'Mentions' | 'Nothing')
* mobile_push?: boolean | null
* mute_until?: string | null
* muted?: boolean | null
* suppress_everyone?: boolean | null
* suppress_roles?: boolean | null
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* alias_avatar_url?: string | null
* alias_name?: string | null
* created_at: string
* hide_muted_channels: boolean
* invited_at?: string | null
* invited_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* joined_at: string
* last_active_at?: string | null
* left_at?: string | null
* message_notifications: 'All' | 'Mentions' | 'Nothing'
* mobile_push: boolean
* mute_until?: string | null
* muted: boolean
* space_id: string
* status: 'Active' | 'Inactive' | 'Left' | 'Removed' | 'Banned'
* suppress_everyone: boolean
* suppress_roles: boolean
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
add_member<
Config extends Alova2MethodConfig<AppResponseData_MemberDto> & {
pathParams: {
space_name: string;
};
data: AddMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MemberDto, 'space.add_member', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
leave_space<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.leave_space', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/members/@me
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* alias_avatar_url?: string | null
* alias_name?: string | null
* hide_muted_channels?: boolean | null
* message_notifications?: null | ('All' | 'Mentions' | 'Nothing')
* mobile_push?: boolean | null
* mute_until?: string | null
* muted?: boolean | null
* suppress_everyone?: boolean | null
* suppress_roles?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* alias_avatar_url?: string | null
* alias_name?: string | null
* created_at: string
* hide_muted_channels: boolean
* invited_at?: string | null
* invited_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* joined_at: string
* last_active_at?: string | null
* left_at?: string | null
* message_notifications: 'All' | 'Mentions' | 'Nothing'
* mobile_push: boolean
* mute_until?: string | null
* muted: boolean
* space_id: string
* status: 'Active' | 'Inactive' | 'Left' | 'Removed' | 'Banned'
* suppress_everyone: boolean
* suppress_roles: boolean
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_self_member<
Config extends Alova2MethodConfig<AppResponseData_MemberDto> & {
pathParams: {
space_name: string;
};
data: UpdateMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MemberDto, 'space.update_self_member', Config>;
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* alias_avatar_url?: string | null
* alias_name?: string | null
* created_at: string
* hide_muted_channels: boolean
* invited_at?: string | null
* invited_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* joined_at: string
* last_active_at?: string | null
* left_at?: string | null
* message_notifications: 'All' | 'Mentions' | 'Nothing'
* mobile_push: boolean
* mute_until?: string | null
* muted: boolean
* space_id: string
* status: 'Active' | 'Inactive' | 'Left' | 'Removed' | 'Banned'
* suppress_everyone: boolean
* suppress_roles: boolean
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_member<
Config extends Alova2MethodConfig<AppResponseData_MemberDto> & {
pathParams: {
space_name: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_MemberDto, 'space.get_member', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
remove_member<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.remove_member', Config>;
/**
* ---
*
* [PATCH]
*
* **path:** /spaces/{space_name}/members/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* alias_avatar_url?: string | null
* alias_name?: string | null
* hide_muted_channels?: boolean | null
* message_notifications?: null | ('All' | 'Mentions' | 'Nothing')
* mobile_push?: boolean | null
* mute_until?: string | null
* muted?: boolean | null
* suppress_everyone?: boolean | null
* suppress_roles?: boolean | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* alias_avatar_url?: string | null
* alias_name?: string | null
* created_at: string
* hide_muted_channels: boolean
* invited_at?: string | null
* invited_by?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* joined_at: string
* last_active_at?: string | null
* left_at?: string | null
* message_notifications: 'All' | 'Mentions' | 'Nothing'
* mobile_push: boolean
* mute_until?: string | null
* muted: boolean
* space_id: string
* status: 'Active' | 'Inactive' | 'Left' | 'Removed' | 'Banned'
* suppress_everyone: boolean
* suppress_roles: boolean
* updated_at?: string | null
* user?: null | {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
update_member<
Config extends Alova2MethodConfig<AppResponseData_MemberDto> & {
pathParams: {
space_name: string;
user_id: number;
};
data: UpdateMemberCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_MemberDto, 'space.update_member', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/members/{user_id}/groups
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
assign_group<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
user_id: number;
};
data: AssignGroupCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.assign_group', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/members/{user_id}/groups/{group_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* space_name: string
* user_id: number
* group_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
unassign_group<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
space_name: string;
user_id: number;
group_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'space.unassign_group', Config>;
};
cleanup: {
/**
* ---
*
* [GET]
*
* **path:** /spaces/{space_name}/cleanup
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* // 目录的子节点数 / 频道的子频道数。
* child_count: number
* // `dirs.id`(目录/仓库/问题集/智能体集)或 `rooms.id`(频道)。
* id: string
* is_archived: boolean
* // 仅仓库与频道有可见性开关。
* is_private?: boolean | null
* // `dir | object | repo | board | text | voice | stage | category | news | guild_room`
* kind: string
* name: string
* // 目录上的权限覆盖条数(group + user)。
* overwrite_count: number
* // 父链拼出的可读路径,例如 `bots / 研究研究`。
* path: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_cleanup_objects<
Config extends Alova2MethodConfig<AppResponseData_Vec_CleanupObjectDto> & {
pathParams: {
/**
* space name
*/
space_name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_CleanupObjectDto, 'cleanup.list_cleanup_objects', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/cleanup/{kind}/{object_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // object kind
* kind: string
* // dir id or room id
* object_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
delete_cleanup_object<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* object kind
*/
kind: string;
/**
* dir id or room id
*/
object_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'cleanup.delete_cleanup_object', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/cleanup/{kind}/{object_id}/archive
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // object kind
* kind: string
* // dir id
* object_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* archived: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_cleanup_archive<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* object kind
*/
kind: string;
/**
* dir id
*/
object_id: string;
};
data: SetRepoArchivedCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'cleanup.set_cleanup_archive', Config>;
/**
* ---
*
* [DELETE]
*
* **path:** /spaces/{space_name}/cleanup/{kind}/{object_id}/overwrites
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // object kind
* kind: string
* // dir id
* object_id: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
clear_cleanup_overwrites<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* object kind
*/
kind: string;
/**
* dir id
*/
object_id: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'cleanup.clear_cleanup_overwrites', Config>;
/**
* ---
*
* [POST]
*
* **path:** /spaces/{space_name}/cleanup/{kind}/{object_id}/visibility
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // space name
* space_name: string
* // object kind
* kind: string
* // dir id or room id
* object_id: string
* }
* ```
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* is_private: boolean
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: null
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
set_cleanup_visibility<
Config extends Alova2MethodConfig<AppResponseData_NoData> & {
pathParams: {
/**
* space name
*/
space_name: string;
/**
* object kind
*/
kind: string;
/**
* dir id or room id
*/
object_id: string;
};
data: SetCleanupVisibilityCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_NoData, 'cleanup.set_cleanup_visibility', Config>;
};
topics: {
/**
* ---
*
* [GET]
*
* **path:** /topics
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* created_at: string
* id: string
* name: string
* updated_at: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_topics<
Config extends Alova2MethodConfig<AppResponseData_Vec_TopicDto> & {
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_TopicDto, 'topics.list_topics', Config>;
/**
* ---
*
* [POST]
*
* **path:** /topics
*
* ---
*
* **RequestBody**
* ```ts
* type RequestBody = {
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
create_topic<
Config extends Alova2MethodConfig<AppResponseData_TopicDto> & {
data: CreateTopicCmd;
}
>(
config: Config
): Alova2Method<AppResponseData_TopicDto, 'topics.create_topic', Config>;
/**
* ---
*
* [GET]
*
* **path:** /topics/{name}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* name: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* created_at: string
* id: string
* name: string
* updated_at: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_topic<
Config extends Alova2MethodConfig<AppResponseData_TopicDto> & {
pathParams: {
name: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_TopicDto, 'topics.get_topic', Config>;
/**
* ---
*
* [GET]
*
* **path:** /topics/{name}/repos
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* name: string
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* limit?: number | null
* offset?: number | null
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* is_private: boolean
* repo_id: string
* repo_name: string
* space_name: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_repos_by_topic<
Config extends Alova2MethodConfig<AppResponseData_Vec_TopicRepoDto> & {
pathParams: {
name: string;
};
params: {
limit?: number | null;
offset?: number | null;
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_TopicRepoDto, 'topics.list_repos_by_topic', Config>;
};
users: {
/**
* ---
*
* [GET]
*
* **path:** /users
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // [items] start
* // [items] end
* ids: string[]
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* // [items] start
* // [items] end
* data?: Array<{
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }>
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
list_users_batch<
Config extends Alova2MethodConfig<AppResponseData_Vec_UserPublic> & {
params: {
ids: string[];
};
}
>(
config: Config
): Alova2Method<AppResponseData_Vec_UserPublic, 'users.list_users_batch', Config>;
/**
* ---
*
* [GET]
*
* **path:** /users/by-username/{username}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // username
* username: string
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_user_by_username<
Config extends Alova2MethodConfig<AppResponseData_UserPublic> & {
pathParams: {
/**
* username
*/
username: string;
};
}
>(
config: Config
): Alova2Method<AppResponseData_UserPublic, 'users.get_user_by_username', Config>;
/**
* ---
*
* [GET]
*
* **path:** /users/{user_id}
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // user id
* user_id: number
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = {
* code: number
* data?: {
* avatar_url: string
* display_name: string
* user_id: number
* username: string
* }
* error?: string | null
* error_code?: string | null
* log_id: string
* message: string
* request_id: string
* }
* ```
*/
get_user<
Config extends Alova2MethodConfig<AppResponseData_UserPublic> & {
pathParams: {
/**
* user id
*/
user_id: number;
};
}
>(
config: Config
): Alova2Method<AppResponseData_UserPublic, 'users.get_user', Config>;
/**
* ---
*
* [GET]
*
* **path:** /users/{user_id}/avatar
*
* ---
*
* **Path Parameters**
* ```ts
* type PathParameters = {
* // user id
* user_id: number
* }
* ```
*
* ---
*
* **Query Parameters**
* ```ts
* type QueryParameters = {
* // [params2] start
* // Which representation a read endpoint should hand back.
* // [params2] end
* variant?: null | ('preview' | 'original')
* }
* ```
*
* ---
*
* **Response**
* ```ts
* type Response = unknown
* ```
*/
get_user_avatar<
Config extends Alova2MethodConfig<unknown> & {
pathParams: {
/**
* user id
*/
user_id: number;
};
params: {
variant?: null | ImageVariant;
};
}
>(
config: Config
): Alova2Method<unknown, 'users.get_user_avatar', Config>;
};
}
var Apis: Apis;
}