mirror of
				https://codeberg.org/yeentown/barkey.git
				synced 2025-11-04 07:24:13 +00:00 
			
		
		
		
	fix(backend): add missing schemas and fix incorrect schemas (#13295)
* fix(backend): add missing schemas and fix incorrect schemas * fix: ci * fix: ci (本命) * fix: run `pnpm build-misskey-js-with-types` * fix: typos * fix: role-condition-formula-value contains `id` * fix: incorrect schema
This commit is contained in:
		
							parent
							
								
									147e8f1e3e
								
							
						
					
					
						commit
						40bbae3d6c
					
				
					 31 changed files with 1038 additions and 160 deletions
				
			
		| 
						 | 
				
			
			@ -37,7 +37,17 @@ import { packedEmojiDetailedSchema, packedEmojiSimpleSchema } from '@/models/jso
 | 
			
		|||
import { packedFlashSchema } from '@/models/json-schema/flash.js';
 | 
			
		||||
import { packedAnnouncementSchema } from '@/models/json-schema/announcement.js';
 | 
			
		||||
import { packedSigninSchema } from '@/models/json-schema/signin.js';
 | 
			
		||||
import { packedRoleLiteSchema, packedRoleSchema, packedRolePoliciesSchema } from '@/models/json-schema/role.js';
 | 
			
		||||
import {
 | 
			
		||||
	packedRoleLiteSchema,
 | 
			
		||||
	packedRoleSchema,
 | 
			
		||||
	packedRolePoliciesSchema,
 | 
			
		||||
	packedRoleCondFormulaLogicsSchema,
 | 
			
		||||
	packedRoleCondFormulaValueNot,
 | 
			
		||||
	packedRoleCondFormulaValueIsLocalOrRemoteSchema,
 | 
			
		||||
	packedRoleCondFormulaValueCreatedSchema,
 | 
			
		||||
	packedRoleCondFormulaFollowersOrFollowingOrNotesSchema,
 | 
			
		||||
	packedRoleCondFormulaValueSchema,
 | 
			
		||||
} from '@/models/json-schema/role.js';
 | 
			
		||||
import { packedAdSchema } from '@/models/json-schema/ad.js';
 | 
			
		||||
import { packedReversiGameLiteSchema, packedReversiGameDetailedSchema } from '@/models/json-schema/reversi-game.js';
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -78,6 +88,12 @@ export const refs = {
 | 
			
		|||
	EmojiDetailed: packedEmojiDetailedSchema,
 | 
			
		||||
	Flash: packedFlashSchema,
 | 
			
		||||
	Signin: packedSigninSchema,
 | 
			
		||||
	RoleCondFormulaLogics: packedRoleCondFormulaLogicsSchema,
 | 
			
		||||
	RoleCondFormulaValueNot: packedRoleCondFormulaValueNot,
 | 
			
		||||
	RoleCondFormulaValueIsLocalOrRemote: packedRoleCondFormulaValueIsLocalOrRemoteSchema,
 | 
			
		||||
	RoleCondFormulaValueCreated: packedRoleCondFormulaValueCreatedSchema,
 | 
			
		||||
	RoleCondFormulaFollowersOrFollowingOrNotes: packedRoleCondFormulaFollowersOrFollowingOrNotesSchema,
 | 
			
		||||
	RoleCondFormulaValue: packedRoleCondFormulaValueSchema,
 | 
			
		||||
	RoleLite: packedRoleLiteSchema,
 | 
			
		||||
	Role: packedRoleSchema,
 | 
			
		||||
	RolePolicies: packedRolePoliciesSchema,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -48,7 +48,7 @@ export class MiBubbleGameRecord {
 | 
			
		|||
	@Column('jsonb', {
 | 
			
		||||
		default: [],
 | 
			
		||||
	})
 | 
			
		||||
	public logs: any[];
 | 
			
		||||
	public logs: number[][];
 | 
			
		||||
 | 
			
		||||
	@Column('boolean', {
 | 
			
		||||
		default: false,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -69,7 +69,7 @@ type CondFormulaValueNotesMoreThanOrEq = {
 | 
			
		|||
	value: number;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
export type RoleCondFormulaValue =
 | 
			
		||||
export type RoleCondFormulaValue = { id: string } & (
 | 
			
		||||
	CondFormulaValueAnd |
 | 
			
		||||
	CondFormulaValueOr |
 | 
			
		||||
	CondFormulaValueNot |
 | 
			
		||||
| 
						 | 
				
			
			@ -82,7 +82,8 @@ export type RoleCondFormulaValue =
 | 
			
		|||
	CondFormulaValueFollowingLessThanOrEq |
 | 
			
		||||
	CondFormulaValueFollowingMoreThanOrEq |
 | 
			
		||||
	CondFormulaValueNotesLessThanOrEq |
 | 
			
		||||
	CondFormulaValueNotesMoreThanOrEq;
 | 
			
		||||
	CondFormulaValueNotesMoreThanOrEq
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
@Entity('role')
 | 
			
		||||
export class MiRole {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -47,12 +47,12 @@ export const packedReversiGameLiteSchema = {
 | 
			
		|||
		user1: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: false,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		user2: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: false,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		winnerId: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -62,7 +62,7 @@ export const packedReversiGameLiteSchema = {
 | 
			
		|||
		winner: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: true,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		surrenderedUserId: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -165,12 +165,12 @@ export const packedReversiGameDetailedSchema = {
 | 
			
		|||
		user1: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: false,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		user2: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: false,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		winnerId: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -180,7 +180,7 @@ export const packedReversiGameDetailedSchema = {
 | 
			
		|||
		winner: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: true,
 | 
			
		||||
			ref: 'User',
 | 
			
		||||
			ref: 'UserLite',
 | 
			
		||||
		},
 | 
			
		||||
		surrenderedUserId: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -226,6 +226,9 @@ export const packedReversiGameDetailedSchema = {
 | 
			
		|||
			items: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'number',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		map: {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,129 @@
 | 
			
		|||
/*
 | 
			
		||||
 * SPDX-FileCopyrightText: syuilo and misskey-project
 | 
			
		||||
 * SPDX-License-Identifier: AGPL-3.0-only
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaLogicsSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	properties: {
 | 
			
		||||
		id: {
 | 
			
		||||
			type: 'string', optional: false,
 | 
			
		||||
		},
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: ['and', 'or'],
 | 
			
		||||
		},
 | 
			
		||||
		values: {
 | 
			
		||||
			type: 'array',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			items: {
 | 
			
		||||
				ref: 'RoleCondFormulaValue',
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaValueNot = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	properties: {
 | 
			
		||||
		id: {
 | 
			
		||||
			type: 'string', optional: false,
 | 
			
		||||
		},
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: ['not'],
 | 
			
		||||
		},
 | 
			
		||||
		value: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			optional: false,
 | 
			
		||||
			ref: 'RoleCondFormulaValue',
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaValueIsLocalOrRemoteSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	properties: {
 | 
			
		||||
		id: {
 | 
			
		||||
			type: 'string', optional: false,
 | 
			
		||||
		},
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: ['isLocal', 'isRemote'],
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaValueCreatedSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	properties: {
 | 
			
		||||
		id: {
 | 
			
		||||
			type: 'string', optional: false,
 | 
			
		||||
		},
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: [
 | 
			
		||||
				'createdLessThan',
 | 
			
		||||
				'createdMoreThan',
 | 
			
		||||
			],
 | 
			
		||||
		},
 | 
			
		||||
		sec: {
 | 
			
		||||
			type: 'number',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaFollowersOrFollowingOrNotesSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	properties: {
 | 
			
		||||
		id: {
 | 
			
		||||
			type: 'string', optional: false,
 | 
			
		||||
		},
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: [
 | 
			
		||||
				'followersLessThanOrEq',
 | 
			
		||||
				'followersMoreThanOrEq',
 | 
			
		||||
				'followingLessThanOrEq',
 | 
			
		||||
				'followingMoreThanOrEq',
 | 
			
		||||
				'notesLessThanOrEq',
 | 
			
		||||
				'notesMoreThanOrEq',
 | 
			
		||||
			],
 | 
			
		||||
		},
 | 
			
		||||
		value: {
 | 
			
		||||
			type: 'number',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRoleCondFormulaValueSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	oneOf: [
 | 
			
		||||
		{
 | 
			
		||||
			ref: 'RoleCondFormulaLogics',
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			ref: 'RoleCondFormulaValueNot',
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			ref: 'RoleCondFormulaValueIsLocalOrRemote',
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			ref: 'RoleCondFormulaValueCreated',
 | 
			
		||||
		},
 | 
			
		||||
		{
 | 
			
		||||
			ref: 'RoleCondFormulaFollowersOrFollowingOrNotes',
 | 
			
		||||
		},
 | 
			
		||||
	],
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedRolePoliciesSchema = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	optional: false, nullable: false,
 | 
			
		||||
| 
						 | 
				
			
			@ -174,6 +300,7 @@ export const packedRoleSchema = {
 | 
			
		|||
				condFormula: {
 | 
			
		||||
					type: 'object',
 | 
			
		||||
					optional: false, nullable: false,
 | 
			
		||||
					ref: 'RoleCondFormulaValue',
 | 
			
		||||
				},
 | 
			
		||||
				isPublic: {
 | 
			
		||||
					type: 'boolean',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,16 +3,38 @@
 | 
			
		|||
 * SPDX-License-Identifier: AGPL-3.0-only
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
const notificationRecieveConfig = {
 | 
			
		||||
export const notificationRecieveConfig = {
 | 
			
		||||
	type: 'object',
 | 
			
		||||
	nullable: false, optional: true,
 | 
			
		||||
	properties: {
 | 
			
		||||
		type: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			enum: ['all', 'following', 'follower', 'mutualFollow', 'list', 'never'],
 | 
			
		||||
	oneOf: [
 | 
			
		||||
		{
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			nullable: false,
 | 
			
		||||
			properties: {
 | 
			
		||||
				type: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					nullable: false,
 | 
			
		||||
					enum: ['all', 'following', 'follower', 'mutualFollow', 'never'],
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			required: ['type'],
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
		{
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			nullable: false,
 | 
			
		||||
			properties: {
 | 
			
		||||
				type: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					nullable: false,
 | 
			
		||||
					enum: ['list'],
 | 
			
		||||
				},
 | 
			
		||||
				userListId: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					format: 'misskey:id',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			required: ['type', 'userListId'],
 | 
			
		||||
		},
 | 
			
		||||
	],
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const packedUserLiteSchema = {
 | 
			
		||||
| 
						 | 
				
			
			@ -546,15 +568,20 @@ export const packedMeDetailedOnlySchema = {
 | 
			
		|||
			type: 'object',
 | 
			
		||||
			nullable: false, optional: false,
 | 
			
		||||
			properties: {
 | 
			
		||||
				app: notificationRecieveConfig,
 | 
			
		||||
				quote: notificationRecieveConfig,
 | 
			
		||||
				reply: notificationRecieveConfig,
 | 
			
		||||
				follow: notificationRecieveConfig,
 | 
			
		||||
				renote: notificationRecieveConfig,
 | 
			
		||||
				mention: notificationRecieveConfig,
 | 
			
		||||
				reaction: notificationRecieveConfig,
 | 
			
		||||
				pollEnded: notificationRecieveConfig,
 | 
			
		||||
				receiveFollowRequest: notificationRecieveConfig,
 | 
			
		||||
				note: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				follow: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				mention: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				reply: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				renote: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				quote: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				reaction: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				pollEnded: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				receiveFollowRequest: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				followRequestAccepted: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				roleAssigned: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				achievementEarned: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				app: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				test: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		emailNotificationTypes: {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,9 +15,6 @@ export const meta = {
 | 
			
		|||
	requireCredential: true,
 | 
			
		||||
	requireAdmin: true,
 | 
			
		||||
	kind: 'write:admin:delete-account',
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -84,6 +84,24 @@ export const meta = {
 | 
			
		|||
			properties: {
 | 
			
		||||
				type: 'object',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				properties: {
 | 
			
		||||
					width: {
 | 
			
		||||
						type: 'number',
 | 
			
		||||
						optional: true, nullable: false,
 | 
			
		||||
					},
 | 
			
		||||
					height: {
 | 
			
		||||
						type: 'number',
 | 
			
		||||
						optional: true, nullable: false,
 | 
			
		||||
					},
 | 
			
		||||
					orientation: {
 | 
			
		||||
						type: 'number',
 | 
			
		||||
						optional: true, nullable: false,
 | 
			
		||||
					},
 | 
			
		||||
					avgColor: {
 | 
			
		||||
						type: 'string',
 | 
			
		||||
						optional: true, nullable: false,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			storedInternal: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,6 +18,18 @@ export const meta = {
 | 
			
		|||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
		optional: false, nullable: false,
 | 
			
		||||
		additionalProperties: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			properties: {
 | 
			
		||||
				count: {
 | 
			
		||||
					type: 'number',
 | 
			
		||||
				},
 | 
			
		||||
				size: {
 | 
			
		||||
					type: 'number',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			required: ['count', 'size'],
 | 
			
		||||
		},
 | 
			
		||||
		example: {
 | 
			
		||||
			migrations: {
 | 
			
		||||
				count: 66,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,6 +10,7 @@ import { DI } from '@/di-symbols.js';
 | 
			
		|||
import { RoleService } from '@/core/RoleService.js';
 | 
			
		||||
import { RoleEntityService } from '@/core/entities/RoleEntityService.js';
 | 
			
		||||
import { IdService } from '@/core/IdService.js';
 | 
			
		||||
import { notificationRecieveConfig } from '@/models/json-schema/user.js';
 | 
			
		||||
 | 
			
		||||
export const meta = {
 | 
			
		||||
	tags: ['admin'],
 | 
			
		||||
| 
						 | 
				
			
			@ -21,6 +22,157 @@ export const meta = {
 | 
			
		|||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
		nullable: false, optional: false,
 | 
			
		||||
		properties: {
 | 
			
		||||
			email: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: false, nullable: true,
 | 
			
		||||
			},
 | 
			
		||||
			emailVerified: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			autoAcceptFollowed: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			noCrawle: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			preventAiLearning: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			alwaysMarkNsfw: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			autoSensitive: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			carefulBot: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			injectFeaturedNote: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			receiveAnnouncementEmail: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			mutedWords: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					anyOf: [
 | 
			
		||||
						{
 | 
			
		||||
							type: 'string',
 | 
			
		||||
						},
 | 
			
		||||
						{
 | 
			
		||||
							type: 'array',
 | 
			
		||||
							items: {
 | 
			
		||||
								type: 'string',
 | 
			
		||||
							},
 | 
			
		||||
						},
 | 
			
		||||
					],
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			mutedInstances: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			notificationRecieveConfig: {
 | 
			
		||||
				type: 'object',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				properties: {
 | 
			
		||||
					note: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					follow: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					mention: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					reply: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					renote: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					quote: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					reaction: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					pollEnded: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					receiveFollowRequest: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					followRequestAccepted: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					roleAssigned: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					achievementEarned: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					app: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
					test: { optional: true, ...notificationRecieveConfig },
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			isModerator: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			isSilenced: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			isSuspended: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			isHibernated: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			lastActiveDate: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: false, nullable: true,
 | 
			
		||||
			},
 | 
			
		||||
			moderationNote: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			signins: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					ref: 'Signin',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			policies: {
 | 
			
		||||
				type: 'object',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				ref: 'RolePolicies',
 | 
			
		||||
			},
 | 
			
		||||
			roles: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'object',
 | 
			
		||||
					ref: 'Role',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			roleAssigns: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'object',
 | 
			
		||||
					properties: {
 | 
			
		||||
						createdAt: {
 | 
			
		||||
							type: 'string',
 | 
			
		||||
							optional: false, nullable: false,
 | 
			
		||||
						},
 | 
			
		||||
						expiresAt: {
 | 
			
		||||
							type: 'string',
 | 
			
		||||
							optional: false, nullable: true,
 | 
			
		||||
						},
 | 
			
		||||
						roleId: {
 | 
			
		||||
							type: 'string',
 | 
			
		||||
							optional: false, nullable: false,
 | 
			
		||||
						},
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -89,7 +241,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
 | 
			
		|||
				isSilenced: isSilenced,
 | 
			
		||||
				isSuspended: user.isSuspended,
 | 
			
		||||
				isHibernated: user.isHibernated,
 | 
			
		||||
				lastActiveDate: user.lastActiveDate,
 | 
			
		||||
				lastActiveDate: user.lastActiveDate ? user.lastActiveDate.toISOString() : null,
 | 
			
		||||
				moderationNote: profile.moderationNote ?? '',
 | 
			
		||||
				signins,
 | 
			
		||||
				policies: await this.roleService.getUserPolicies(user.id),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,9 +24,19 @@ export const meta = {
 | 
			
		|||
			type: 'object',
 | 
			
		||||
			optional: false, nullable: false,
 | 
			
		||||
			properties: {
 | 
			
		||||
				id: { type: 'string', format: 'misskey:id' },
 | 
			
		||||
				score: { type: 'integer' },
 | 
			
		||||
				user: { ref: 'UserLite' },
 | 
			
		||||
				id: {
 | 
			
		||||
					type: 'string', format: 'misskey:id',
 | 
			
		||||
					optional: false, nullable: false,
 | 
			
		||||
				},
 | 
			
		||||
				score: {
 | 
			
		||||
					type: 'integer',
 | 
			
		||||
					optional: false, nullable: false,
 | 
			
		||||
				},
 | 
			
		||||
				user: {
 | 
			
		||||
					type: 'object',
 | 
			
		||||
					optional: true, nullable: false,
 | 
			
		||||
					ref: 'UserLite',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,9 +29,6 @@ export const meta = {
 | 
			
		|||
			id: 'eb627bc7-574b-4a52-a860-3c3eae772b88',
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			@ -39,7 +36,15 @@ export const paramDef = {
 | 
			
		|||
	properties: {
 | 
			
		||||
		score: { type: 'integer', minimum: 0 },
 | 
			
		||||
		seed: { type: 'string', minLength: 1, maxLength: 1024 },
 | 
			
		||||
		logs: { type: 'array' },
 | 
			
		||||
		logs: {
 | 
			
		||||
			type: 'array',
 | 
			
		||||
			items: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'number',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		gameMode: { type: 'string' },
 | 
			
		||||
		gameVersion: { type: 'integer' },
 | 
			
		||||
	},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,6 +15,19 @@ export const meta = {
 | 
			
		|||
	requireCredential: true,
 | 
			
		||||
 | 
			
		||||
	secure: true,
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
		properties: {
 | 
			
		||||
			backupCodes: {
 | 
			
		||||
				type: 'array',
 | 
			
		||||
				optional: false,
 | 
			
		||||
				items: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -47,7 +47,7 @@ export const meta = {
 | 
			
		|||
				properties: {
 | 
			
		||||
					id: {
 | 
			
		||||
						type: 'string',
 | 
			
		||||
						nullable: true,
 | 
			
		||||
						optional: true,
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -21,26 +21,31 @@ export const meta = {
 | 
			
		|||
			properties: {
 | 
			
		||||
				id: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					optional: false,
 | 
			
		||||
					format: 'misskey:id',
 | 
			
		||||
				},
 | 
			
		||||
				name: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					optional: true,
 | 
			
		||||
				},
 | 
			
		||||
				createdAt: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					optional: false,
 | 
			
		||||
					format: 'date-time',
 | 
			
		||||
				},
 | 
			
		||||
				lastUsedAt: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					optional: true,
 | 
			
		||||
					format: 'date-time',
 | 
			
		||||
				},
 | 
			
		||||
				permission: {
 | 
			
		||||
					type: 'array',
 | 
			
		||||
					optional: false,
 | 
			
		||||
					uniqueItems: true,
 | 
			
		||||
					items: {
 | 
			
		||||
						type: 'string'
 | 
			
		||||
						type: 'string',
 | 
			
		||||
					},
 | 
			
		||||
				}
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,23 +23,27 @@ export const meta = {
 | 
			
		|||
				id: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					format: 'misskey:id',
 | 
			
		||||
					optional: false,
 | 
			
		||||
				},
 | 
			
		||||
				name: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					optional: false,
 | 
			
		||||
				},
 | 
			
		||||
				callbackUrl: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					nullable: true,
 | 
			
		||||
					optional: false, nullable: true,
 | 
			
		||||
				},
 | 
			
		||||
				permission: {
 | 
			
		||||
					type: 'array',
 | 
			
		||||
					optional: false,
 | 
			
		||||
					uniqueItems: true,
 | 
			
		||||
					items: {
 | 
			
		||||
						type: 'string'
 | 
			
		||||
						type: 'string',
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
				isAuthorized: {
 | 
			
		||||
					type: 'boolean',
 | 
			
		||||
					optional: true,
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -22,7 +22,16 @@ export const meta = {
 | 
			
		|||
 | 
			
		||||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
	}
 | 
			
		||||
		properties: {
 | 
			
		||||
			updatedAt: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: false,
 | 
			
		||||
			},
 | 
			
		||||
			value: {
 | 
			
		||||
				optional: false,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			@ -50,7 +59,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
 | 
			
		|||
			}
 | 
			
		||||
 | 
			
		||||
			return {
 | 
			
		||||
				updatedAt: item.updatedAt,
 | 
			
		||||
				updatedAt: item.updatedAt.toISOString(),
 | 
			
		||||
				value: item.value,
 | 
			
		||||
			};
 | 
			
		||||
		});
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -13,6 +13,9 @@ export const meta = {
 | 
			
		|||
 | 
			
		||||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
		additionalProperties: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,6 +10,13 @@ import { RegistryApiService } from '@/core/RegistryApiService.js';
 | 
			
		|||
export const meta = {
 | 
			
		||||
	requireCredential: true,
 | 
			
		||||
	kind: 'read:account',
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
		type: 'array',
 | 
			
		||||
		items: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,6 +33,7 @@ import { HttpRequestService } from '@/core/HttpRequestService.js';
 | 
			
		|||
import type { Config } from '@/config.js';
 | 
			
		||||
import { safeForSql } from '@/misc/safe-for-sql.js';
 | 
			
		||||
import { AvatarDecorationService } from '@/core/AvatarDecorationService.js';
 | 
			
		||||
import { notificationRecieveConfig } from '@/models/json-schema/user.js';
 | 
			
		||||
import { ApiLoggerService } from '../../ApiLoggerService.js';
 | 
			
		||||
import { ApiError } from '../../error.js';
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -184,7 +185,26 @@ export const paramDef = {
 | 
			
		|||
		mutedInstances: { type: 'array', items: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
		} },
 | 
			
		||||
		notificationRecieveConfig: { type: 'object' },
 | 
			
		||||
		notificationRecieveConfig: {
 | 
			
		||||
			type: 'object',
 | 
			
		||||
			nullable: false,
 | 
			
		||||
			properties: {
 | 
			
		||||
				note: notificationRecieveConfig,
 | 
			
		||||
				follow: notificationRecieveConfig,
 | 
			
		||||
				mention: notificationRecieveConfig,
 | 
			
		||||
				reply: notificationRecieveConfig,
 | 
			
		||||
				renote: notificationRecieveConfig,
 | 
			
		||||
				quote: notificationRecieveConfig,
 | 
			
		||||
				reaction: notificationRecieveConfig,
 | 
			
		||||
				pollEnded: notificationRecieveConfig,
 | 
			
		||||
				receiveFollowRequest: notificationRecieveConfig,
 | 
			
		||||
				followRequestAccepted: notificationRecieveConfig,
 | 
			
		||||
				roleAssigned: notificationRecieveConfig,
 | 
			
		||||
				achievementEarned: notificationRecieveConfig,
 | 
			
		||||
				app: notificationRecieveConfig,
 | 
			
		||||
				test: notificationRecieveConfig,
 | 
			
		||||
			},
 | 
			
		||||
		},
 | 
			
		||||
		emailNotificationTypes: { type: 'array', items: {
 | 
			
		||||
			type: 'string',
 | 
			
		||||
		} },
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,7 +33,7 @@ export const meta = {
 | 
			
		|||
		properties: {
 | 
			
		||||
			id: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				format: 'misskey:id'
 | 
			
		||||
				format: 'misskey:id',
 | 
			
		||||
			},
 | 
			
		||||
			userId: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -45,7 +45,7 @@ export const meta = {
 | 
			
		|||
				items: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					enum: webhookEventTypes,
 | 
			
		||||
				}
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			url: { type: 'string' },
 | 
			
		||||
			secret: { type: 'string' },
 | 
			
		||||
| 
						 | 
				
			
			@ -108,7 +108,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
 | 
			
		|||
				url: webhook.url,
 | 
			
		||||
				secret: webhook.secret,
 | 
			
		||||
				active: webhook.active,
 | 
			
		||||
				latestSentAt: webhook.latestSentAt?.toISOString(),
 | 
			
		||||
				latestSentAt: webhook.latestSentAt ? webhook.latestSentAt.toISOString() : null,
 | 
			
		||||
				latestStatus: webhook.latestStatus,
 | 
			
		||||
			};
 | 
			
		||||
		});
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,7 +23,7 @@ export const meta = {
 | 
			
		|||
			properties: {
 | 
			
		||||
				id: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					format: 'misskey:id'
 | 
			
		||||
					format: 'misskey:id',
 | 
			
		||||
				},
 | 
			
		||||
				userId: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -35,7 +35,7 @@ export const meta = {
 | 
			
		|||
					items: {
 | 
			
		||||
						type: 'string',
 | 
			
		||||
						enum: webhookEventTypes,
 | 
			
		||||
					}
 | 
			
		||||
					},
 | 
			
		||||
				},
 | 
			
		||||
				url: { type: 'string' },
 | 
			
		||||
				secret: { type: 'string' },
 | 
			
		||||
| 
						 | 
				
			
			@ -43,8 +43,8 @@ export const meta = {
 | 
			
		|||
				latestSentAt: { type: 'string', format: 'date-time', nullable: true },
 | 
			
		||||
				latestStatus: { type: 'integer', nullable: true },
 | 
			
		||||
			},
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			@ -73,7 +73,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
 | 
			
		|||
					url: webhook.url,
 | 
			
		||||
					secret: webhook.secret,
 | 
			
		||||
					active: webhook.active,
 | 
			
		||||
					latestSentAt: webhook.latestSentAt?.toISOString(),
 | 
			
		||||
					latestSentAt: webhook.latestSentAt ? webhook.latestSentAt.toISOString() : null,
 | 
			
		||||
					latestStatus: webhook.latestStatus,
 | 
			
		||||
				}
 | 
			
		||||
			));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,7 +30,7 @@ export const meta = {
 | 
			
		|||
		properties: {
 | 
			
		||||
			id: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				format: 'misskey:id'
 | 
			
		||||
				format: 'misskey:id',
 | 
			
		||||
			},
 | 
			
		||||
			userId: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
| 
						 | 
				
			
			@ -42,7 +42,7 @@ export const meta = {
 | 
			
		|||
				items: {
 | 
			
		||||
					type: 'string',
 | 
			
		||||
					enum: webhookEventTypes,
 | 
			
		||||
				}
 | 
			
		||||
				},
 | 
			
		||||
			},
 | 
			
		||||
			url: { type: 'string' },
 | 
			
		||||
			secret: { type: 'string' },
 | 
			
		||||
| 
						 | 
				
			
			@ -85,7 +85,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
 | 
			
		|||
				url: webhook.url,
 | 
			
		||||
				secret: webhook.secret,
 | 
			
		||||
				active: webhook.active,
 | 
			
		||||
				latestSentAt: webhook.latestSentAt?.toISOString(),
 | 
			
		||||
				latestSentAt: webhook.latestSentAt ? webhook.latestSentAt.toISOString() : null,
 | 
			
		||||
				latestStatus: webhook.latestStatus,
 | 
			
		||||
			};
 | 
			
		||||
		});
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,9 +14,6 @@ export const meta = {
 | 
			
		|||
 | 
			
		||||
	errors: {
 | 
			
		||||
	},
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,6 +30,9 @@ export const meta = {
 | 
			
		|||
	},
 | 
			
		||||
 | 
			
		||||
	res: {
 | 
			
		||||
		type: 'object',
 | 
			
		||||
		optional: true,
 | 
			
		||||
		ref: 'ReversiGameDetailed',
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,24 +18,28 @@ export const meta = {
 | 
			
		|||
		properties: {
 | 
			
		||||
			id: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				format: 'misskey:id'
 | 
			
		||||
				format: 'misskey:id',
 | 
			
		||||
				optional: true, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			required: {
 | 
			
		||||
				type: 'boolean',
 | 
			
		||||
				optional: false, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			string: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: true, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			default: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				optional: true, nullable: false,
 | 
			
		||||
			},
 | 
			
		||||
			nullableDefault: {
 | 
			
		||||
				type: 'string',
 | 
			
		||||
				default: 'hello',
 | 
			
		||||
				nullable: true,
 | 
			
		||||
				optional: true, nullable: true,
 | 
			
		||||
			},
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
		},
 | 
			
		||||
	},
 | 
			
		||||
} as const;
 | 
			
		||||
 | 
			
		||||
export const paramDef = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -103,9 +103,6 @@ type AdminAvatarDecorationsUpdateRequest = operations['admin/avatar-decorations/
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type AdminDeleteAccountRequest = operations['admin/delete-account']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type AdminDeleteAccountResponse = operations['admin/delete-account']['responses']['200']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type AdminDeleteAllFilesOfAUserRequest = operations['admin/delete-all-files-of-a-user']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -482,9 +479,6 @@ type BubbleGameRankingResponse = operations['bubble-game/ranking']['responses'][
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type BubbleGameRegisterRequest = operations['bubble-game/register']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type BubbleGameRegisterResponse = operations['bubble-game/register']['responses']['200']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type Channel = components['schemas']['Channel'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1210,7 +1204,6 @@ declare namespace entities {
 | 
			
		|||
        AdminUnsuspendUserRequest,
 | 
			
		||||
        AdminUpdateMetaRequest,
 | 
			
		||||
        AdminDeleteAccountRequest,
 | 
			
		||||
        AdminDeleteAccountResponse,
 | 
			
		||||
        AdminUpdateUserNoteRequest,
 | 
			
		||||
        AdminRolesCreateRequest,
 | 
			
		||||
        AdminRolesCreateResponse,
 | 
			
		||||
| 
						 | 
				
			
			@ -1408,6 +1401,7 @@ declare namespace entities {
 | 
			
		|||
        HashtagsUsersResponse,
 | 
			
		||||
        IResponse,
 | 
			
		||||
        I2faDoneRequest,
 | 
			
		||||
        I2faDoneResponse,
 | 
			
		||||
        I2faKeyDoneRequest,
 | 
			
		||||
        I2faKeyDoneResponse,
 | 
			
		||||
        I2faPasswordLessRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -1458,6 +1452,7 @@ declare namespace entities {
 | 
			
		|||
        IRegistryKeysWithTypeRequest,
 | 
			
		||||
        IRegistryKeysWithTypeResponse,
 | 
			
		||||
        IRegistryKeysRequest,
 | 
			
		||||
        IRegistryKeysResponse,
 | 
			
		||||
        IRegistryRemoveRequest,
 | 
			
		||||
        IRegistryScopesWithDomainResponse,
 | 
			
		||||
        IRegistrySetRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -1661,11 +1656,9 @@ declare namespace entities {
 | 
			
		|||
        FetchExternalResourcesResponse,
 | 
			
		||||
        RetentionResponse,
 | 
			
		||||
        BubbleGameRegisterRequest,
 | 
			
		||||
        BubbleGameRegisterResponse,
 | 
			
		||||
        BubbleGameRankingRequest,
 | 
			
		||||
        BubbleGameRankingResponse,
 | 
			
		||||
        ReversiCancelMatchRequest,
 | 
			
		||||
        ReversiCancelMatchResponse,
 | 
			
		||||
        ReversiGamesRequest,
 | 
			
		||||
        ReversiGamesResponse,
 | 
			
		||||
        ReversiMatchRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -1712,6 +1705,12 @@ declare namespace entities {
 | 
			
		|||
        EmojiDetailed,
 | 
			
		||||
        Flash,
 | 
			
		||||
        Signin,
 | 
			
		||||
        RoleCondFormulaLogics,
 | 
			
		||||
        RoleCondFormulaValueNot,
 | 
			
		||||
        RoleCondFormulaValueIsLocalOrRemote,
 | 
			
		||||
        RoleCondFormulaValueCreated,
 | 
			
		||||
        RoleCondFormulaFollowersOrFollowingOrNotes,
 | 
			
		||||
        RoleCondFormulaValue,
 | 
			
		||||
        RoleLite,
 | 
			
		||||
        Role,
 | 
			
		||||
        RolePolicies,
 | 
			
		||||
| 
						 | 
				
			
			@ -1972,6 +1971,9 @@ type HashtagsUsersResponse = operations['hashtags/users']['responses']['200']['c
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type I2faDoneRequest = operations['i/2fa/done']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type I2faDoneResponse = operations['i/2fa/done']['responses']['200']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type I2faKeyDoneRequest = operations['i/2fa/key-done']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2143,6 +2145,9 @@ type IRegistryGetResponse = operations['i/registry/get']['responses']['200']['co
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type IRegistryKeysRequest = operations['i/registry/keys']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type IRegistryKeysResponse = operations['i/registry/keys']['responses']['200']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type IRegistryKeysWithTypeRequest = operations['i/registry/keys-with-type']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2659,9 +2664,6 @@ type RetentionResponse = operations['retention']['responses']['200']['content'][
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type ReversiCancelMatchRequest = operations['reversi/cancel-match']['requestBody']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type ReversiCancelMatchResponse = operations['reversi/cancel-match']['responses']['200']['content']['application/json'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type ReversiGameDetailed = components['schemas']['ReversiGameDetailed'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2701,6 +2703,24 @@ type ReversiVerifyResponse = operations['reversi/verify']['responses']['200']['c
 | 
			
		|||
// @public (undocumented)
 | 
			
		||||
type Role = components['schemas']['Role'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaFollowersOrFollowingOrNotes = components['schemas']['RoleCondFormulaFollowersOrFollowingOrNotes'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaLogics = components['schemas']['RoleCondFormulaLogics'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaValue = components['schemas']['RoleCondFormulaValue'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaValueCreated = components['schemas']['RoleCondFormulaValueCreated'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaValueIsLocalOrRemote = components['schemas']['RoleCondFormulaValueIsLocalOrRemote'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleCondFormulaValueNot = components['schemas']['RoleCondFormulaValueNot'];
 | 
			
		||||
 | 
			
		||||
// @public (undocumented)
 | 
			
		||||
type RoleLite = components['schemas']['RoleLite'];
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -85,7 +85,6 @@ import type {
 | 
			
		|||
	AdminUnsuspendUserRequest,
 | 
			
		||||
	AdminUpdateMetaRequest,
 | 
			
		||||
	AdminDeleteAccountRequest,
 | 
			
		||||
	AdminDeleteAccountResponse,
 | 
			
		||||
	AdminUpdateUserNoteRequest,
 | 
			
		||||
	AdminRolesCreateRequest,
 | 
			
		||||
	AdminRolesCreateResponse,
 | 
			
		||||
| 
						 | 
				
			
			@ -283,6 +282,7 @@ import type {
 | 
			
		|||
	HashtagsUsersResponse,
 | 
			
		||||
	IResponse,
 | 
			
		||||
	I2faDoneRequest,
 | 
			
		||||
	I2faDoneResponse,
 | 
			
		||||
	I2faKeyDoneRequest,
 | 
			
		||||
	I2faKeyDoneResponse,
 | 
			
		||||
	I2faPasswordLessRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -333,6 +333,7 @@ import type {
 | 
			
		|||
	IRegistryKeysWithTypeRequest,
 | 
			
		||||
	IRegistryKeysWithTypeResponse,
 | 
			
		||||
	IRegistryKeysRequest,
 | 
			
		||||
	IRegistryKeysResponse,
 | 
			
		||||
	IRegistryRemoveRequest,
 | 
			
		||||
	IRegistryScopesWithDomainResponse,
 | 
			
		||||
	IRegistrySetRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -536,11 +537,9 @@ import type {
 | 
			
		|||
	FetchExternalResourcesResponse,
 | 
			
		||||
	RetentionResponse,
 | 
			
		||||
	BubbleGameRegisterRequest,
 | 
			
		||||
	BubbleGameRegisterResponse,
 | 
			
		||||
	BubbleGameRankingRequest,
 | 
			
		||||
	BubbleGameRankingResponse,
 | 
			
		||||
	ReversiCancelMatchRequest,
 | 
			
		||||
	ReversiCancelMatchResponse,
 | 
			
		||||
	ReversiGamesRequest,
 | 
			
		||||
	ReversiGamesResponse,
 | 
			
		||||
	ReversiMatchRequest,
 | 
			
		||||
| 
						 | 
				
			
			@ -619,7 +618,7 @@ export type Endpoints = {
 | 
			
		|||
	'admin/suspend-user': { req: AdminSuspendUserRequest; res: EmptyResponse };
 | 
			
		||||
	'admin/unsuspend-user': { req: AdminUnsuspendUserRequest; res: EmptyResponse };
 | 
			
		||||
	'admin/update-meta': { req: AdminUpdateMetaRequest; res: EmptyResponse };
 | 
			
		||||
	'admin/delete-account': { req: AdminDeleteAccountRequest; res: AdminDeleteAccountResponse };
 | 
			
		||||
	'admin/delete-account': { req: AdminDeleteAccountRequest; res: EmptyResponse };
 | 
			
		||||
	'admin/update-user-note': { req: AdminUpdateUserNoteRequest; res: EmptyResponse };
 | 
			
		||||
	'admin/roles/create': { req: AdminRolesCreateRequest; res: AdminRolesCreateResponse };
 | 
			
		||||
	'admin/roles/delete': { req: AdminRolesDeleteRequest; res: EmptyResponse };
 | 
			
		||||
| 
						 | 
				
			
			@ -739,7 +738,7 @@ export type Endpoints = {
 | 
			
		|||
	'hashtags/trend': { req: EmptyRequest; res: HashtagsTrendResponse };
 | 
			
		||||
	'hashtags/users': { req: HashtagsUsersRequest; res: HashtagsUsersResponse };
 | 
			
		||||
	'i': { req: EmptyRequest; res: IResponse };
 | 
			
		||||
	'i/2fa/done': { req: I2faDoneRequest; res: EmptyResponse };
 | 
			
		||||
	'i/2fa/done': { req: I2faDoneRequest; res: I2faDoneResponse };
 | 
			
		||||
	'i/2fa/key-done': { req: I2faKeyDoneRequest; res: I2faKeyDoneResponse };
 | 
			
		||||
	'i/2fa/password-less': { req: I2faPasswordLessRequest; res: EmptyResponse };
 | 
			
		||||
	'i/2fa/register-key': { req: I2faRegisterKeyRequest; res: I2faRegisterKeyResponse };
 | 
			
		||||
| 
						 | 
				
			
			@ -780,7 +779,7 @@ export type Endpoints = {
 | 
			
		|||
	'i/registry/get-detail': { req: IRegistryGetDetailRequest; res: IRegistryGetDetailResponse };
 | 
			
		||||
	'i/registry/get': { req: IRegistryGetRequest; res: IRegistryGetResponse };
 | 
			
		||||
	'i/registry/keys-with-type': { req: IRegistryKeysWithTypeRequest; res: IRegistryKeysWithTypeResponse };
 | 
			
		||||
	'i/registry/keys': { req: IRegistryKeysRequest; res: EmptyResponse };
 | 
			
		||||
	'i/registry/keys': { req: IRegistryKeysRequest; res: IRegistryKeysResponse };
 | 
			
		||||
	'i/registry/remove': { req: IRegistryRemoveRequest; res: EmptyResponse };
 | 
			
		||||
	'i/registry/scopes-with-domain': { req: EmptyRequest; res: IRegistryScopesWithDomainResponse };
 | 
			
		||||
	'i/registry/set': { req: IRegistrySetRequest; res: EmptyResponse };
 | 
			
		||||
| 
						 | 
				
			
			@ -912,9 +911,9 @@ export type Endpoints = {
 | 
			
		|||
	'fetch-rss': { req: FetchRssRequest; res: FetchRssResponse };
 | 
			
		||||
	'fetch-external-resources': { req: FetchExternalResourcesRequest; res: FetchExternalResourcesResponse };
 | 
			
		||||
	'retention': { req: EmptyRequest; res: RetentionResponse };
 | 
			
		||||
	'bubble-game/register': { req: BubbleGameRegisterRequest; res: BubbleGameRegisterResponse };
 | 
			
		||||
	'bubble-game/register': { req: BubbleGameRegisterRequest; res: EmptyResponse };
 | 
			
		||||
	'bubble-game/ranking': { req: BubbleGameRankingRequest; res: BubbleGameRankingResponse };
 | 
			
		||||
	'reversi/cancel-match': { req: ReversiCancelMatchRequest; res: ReversiCancelMatchResponse };
 | 
			
		||||
	'reversi/cancel-match': { req: ReversiCancelMatchRequest; res: EmptyResponse };
 | 
			
		||||
	'reversi/games': { req: ReversiGamesRequest; res: ReversiGamesResponse };
 | 
			
		||||
	'reversi/match': { req: ReversiMatchRequest; res: ReversiMatchResponse };
 | 
			
		||||
	'reversi/invitations': { req: EmptyRequest; res: ReversiInvitationsResponse };
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -87,7 +87,6 @@ export type AdminSuspendUserRequest = operations['admin/suspend-user']['requestB
 | 
			
		|||
export type AdminUnsuspendUserRequest = operations['admin/unsuspend-user']['requestBody']['content']['application/json'];
 | 
			
		||||
export type AdminUpdateMetaRequest = operations['admin/update-meta']['requestBody']['content']['application/json'];
 | 
			
		||||
export type AdminDeleteAccountRequest = operations['admin/delete-account']['requestBody']['content']['application/json'];
 | 
			
		||||
export type AdminDeleteAccountResponse = operations['admin/delete-account']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type AdminUpdateUserNoteRequest = operations['admin/update-user-note']['requestBody']['content']['application/json'];
 | 
			
		||||
export type AdminRolesCreateRequest = operations['admin/roles/create']['requestBody']['content']['application/json'];
 | 
			
		||||
export type AdminRolesCreateResponse = operations['admin/roles/create']['responses']['200']['content']['application/json'];
 | 
			
		||||
| 
						 | 
				
			
			@ -285,6 +284,7 @@ export type HashtagsUsersRequest = operations['hashtags/users']['requestBody']['
 | 
			
		|||
export type HashtagsUsersResponse = operations['hashtags/users']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type IResponse = operations['i']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type I2faDoneRequest = operations['i/2fa/done']['requestBody']['content']['application/json'];
 | 
			
		||||
export type I2faDoneResponse = operations['i/2fa/done']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type I2faKeyDoneRequest = operations['i/2fa/key-done']['requestBody']['content']['application/json'];
 | 
			
		||||
export type I2faKeyDoneResponse = operations['i/2fa/key-done']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type I2faPasswordLessRequest = operations['i/2fa/password-less']['requestBody']['content']['application/json'];
 | 
			
		||||
| 
						 | 
				
			
			@ -335,6 +335,7 @@ export type IRegistryGetResponse = operations['i/registry/get']['responses']['20
 | 
			
		|||
export type IRegistryKeysWithTypeRequest = operations['i/registry/keys-with-type']['requestBody']['content']['application/json'];
 | 
			
		||||
export type IRegistryKeysWithTypeResponse = operations['i/registry/keys-with-type']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type IRegistryKeysRequest = operations['i/registry/keys']['requestBody']['content']['application/json'];
 | 
			
		||||
export type IRegistryKeysResponse = operations['i/registry/keys']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type IRegistryRemoveRequest = operations['i/registry/remove']['requestBody']['content']['application/json'];
 | 
			
		||||
export type IRegistryScopesWithDomainResponse = operations['i/registry/scopes-with-domain']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type IRegistrySetRequest = operations['i/registry/set']['requestBody']['content']['application/json'];
 | 
			
		||||
| 
						 | 
				
			
			@ -538,11 +539,9 @@ export type FetchExternalResourcesRequest = operations['fetch-external-resources
 | 
			
		|||
export type FetchExternalResourcesResponse = operations['fetch-external-resources']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type RetentionResponse = operations['retention']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type BubbleGameRegisterRequest = operations['bubble-game/register']['requestBody']['content']['application/json'];
 | 
			
		||||
export type BubbleGameRegisterResponse = operations['bubble-game/register']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type BubbleGameRankingRequest = operations['bubble-game/ranking']['requestBody']['content']['application/json'];
 | 
			
		||||
export type BubbleGameRankingResponse = operations['bubble-game/ranking']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type ReversiCancelMatchRequest = operations['reversi/cancel-match']['requestBody']['content']['application/json'];
 | 
			
		||||
export type ReversiCancelMatchResponse = operations['reversi/cancel-match']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type ReversiGamesRequest = operations['reversi/games']['requestBody']['content']['application/json'];
 | 
			
		||||
export type ReversiGamesResponse = operations['reversi/games']['responses']['200']['content']['application/json'];
 | 
			
		||||
export type ReversiMatchRequest = operations['reversi/match']['requestBody']['content']['application/json'];
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,6 +35,12 @@ export type EmojiSimple = components['schemas']['EmojiSimple'];
 | 
			
		|||
export type EmojiDetailed = components['schemas']['EmojiDetailed'];
 | 
			
		||||
export type Flash = components['schemas']['Flash'];
 | 
			
		||||
export type Signin = components['schemas']['Signin'];
 | 
			
		||||
export type RoleCondFormulaLogics = components['schemas']['RoleCondFormulaLogics'];
 | 
			
		||||
export type RoleCondFormulaValueNot = components['schemas']['RoleCondFormulaValueNot'];
 | 
			
		||||
export type RoleCondFormulaValueIsLocalOrRemote = components['schemas']['RoleCondFormulaValueIsLocalOrRemote'];
 | 
			
		||||
export type RoleCondFormulaValueCreated = components['schemas']['RoleCondFormulaValueCreated'];
 | 
			
		||||
export type RoleCondFormulaFollowersOrFollowingOrNotes = components['schemas']['RoleCondFormulaFollowersOrFollowingOrNotes'];
 | 
			
		||||
export type RoleCondFormulaValue = components['schemas']['RoleCondFormulaValue'];
 | 
			
		||||
export type RoleLite = components['schemas']['RoleLite'];
 | 
			
		||||
export type Role = components['schemas']['Role'];
 | 
			
		||||
export type RolePolicies = components['schemas']['RolePolicies'];
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3696,42 +3696,132 @@ export type components = {
 | 
			
		|||
      hardMutedWords: string[][];
 | 
			
		||||
      mutedInstances: string[] | null;
 | 
			
		||||
      notificationRecieveConfig: {
 | 
			
		||||
        app?: {
 | 
			
		||||
        note?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        quote?: {
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        reply?: {
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        follow?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        follow?: {
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        renote?: {
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        mention?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        mention?: {
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        reaction?: {
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        reply?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        pollEnded?: {
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
        receiveFollowRequest?: {
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        renote?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'list' | 'never';
 | 
			
		||||
        };
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        quote?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        reaction?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        pollEnded?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        receiveFollowRequest?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        followRequestAccepted?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        roleAssigned?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        achievementEarned?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        app?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
        test?: OneOf<[{
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
        }, {
 | 
			
		||||
          /** @enum {string} */
 | 
			
		||||
          type: 'list';
 | 
			
		||||
          /** Format: misskey:id */
 | 
			
		||||
          userListId: string;
 | 
			
		||||
        }]>;
 | 
			
		||||
      };
 | 
			
		||||
      emailNotificationTypes: string[];
 | 
			
		||||
      achievements: {
 | 
			
		||||
| 
						 | 
				
			
			@ -4463,6 +4553,36 @@ export type components = {
 | 
			
		|||
      headers: Record<string, never>;
 | 
			
		||||
      success: boolean;
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaLogics: {
 | 
			
		||||
      id: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      type: 'and' | 'or';
 | 
			
		||||
      values: components['schemas']['RoleCondFormulaValue'][];
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaValueNot: {
 | 
			
		||||
      id: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      type: 'not';
 | 
			
		||||
      value: components['schemas']['RoleCondFormulaValue'];
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaValueIsLocalOrRemote: {
 | 
			
		||||
      id: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      type: 'isLocal' | 'isRemote';
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaValueCreated: {
 | 
			
		||||
      id: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      type: 'createdLessThan' | 'createdMoreThan';
 | 
			
		||||
      sec: number;
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaFollowersOrFollowingOrNotes: {
 | 
			
		||||
      id: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      type: 'followersLessThanOrEq' | 'followersMoreThanOrEq' | 'followingLessThanOrEq' | 'followingMoreThanOrEq' | 'notesLessThanOrEq' | 'notesMoreThanOrEq';
 | 
			
		||||
      value: number;
 | 
			
		||||
    };
 | 
			
		||||
    RoleCondFormulaValue: components['schemas']['RoleCondFormulaLogics'] | components['schemas']['RoleCondFormulaValueNot'] | components['schemas']['RoleCondFormulaValueIsLocalOrRemote'] | components['schemas']['RoleCondFormulaValueCreated'] | components['schemas']['RoleCondFormulaFollowersOrFollowingOrNotes'];
 | 
			
		||||
    RoleLite: {
 | 
			
		||||
      /**
 | 
			
		||||
       * Format: id
 | 
			
		||||
| 
						 | 
				
			
			@ -4489,7 +4609,7 @@ export type components = {
 | 
			
		|||
      updatedAt: string;
 | 
			
		||||
      /** @enum {string} */
 | 
			
		||||
      target: 'manual' | 'conditional';
 | 
			
		||||
      condFormula: Record<string, never>;
 | 
			
		||||
      condFormula: components['schemas']['RoleCondFormulaValue'];
 | 
			
		||||
      /** @example false */
 | 
			
		||||
      isPublic: boolean;
 | 
			
		||||
      /** @example false */
 | 
			
		||||
| 
						 | 
				
			
			@ -4548,11 +4668,11 @@ export type components = {
 | 
			
		|||
      user1Id: string;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      user2Id: string;
 | 
			
		||||
      user1: components['schemas']['User'];
 | 
			
		||||
      user2: components['schemas']['User'];
 | 
			
		||||
      user1: components['schemas']['UserLite'];
 | 
			
		||||
      user2: components['schemas']['UserLite'];
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      winnerId: string | null;
 | 
			
		||||
      winner: components['schemas']['User'] | null;
 | 
			
		||||
      winner: components['schemas']['UserLite'] | null;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      surrenderedUserId: string | null;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
| 
						 | 
				
			
			@ -4584,11 +4704,11 @@ export type components = {
 | 
			
		|||
      user1Id: string;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      user2Id: string;
 | 
			
		||||
      user1: components['schemas']['User'];
 | 
			
		||||
      user2: components['schemas']['User'];
 | 
			
		||||
      user1: components['schemas']['UserLite'];
 | 
			
		||||
      user2: components['schemas']['UserLite'];
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      winnerId: string | null;
 | 
			
		||||
      winner: components['schemas']['User'] | null;
 | 
			
		||||
      winner: components['schemas']['UserLite'] | null;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
      surrenderedUserId: string | null;
 | 
			
		||||
      /** Format: id */
 | 
			
		||||
| 
						 | 
				
			
			@ -4600,7 +4720,7 @@ export type components = {
 | 
			
		|||
      canPutEverywhere: boolean;
 | 
			
		||||
      loopedBoard: boolean;
 | 
			
		||||
      timeLimitForEachTurn: number;
 | 
			
		||||
      logs: unknown[][];
 | 
			
		||||
      logs: number[][];
 | 
			
		||||
      map: string[];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
| 
						 | 
				
			
			@ -6128,7 +6248,12 @@ export type operations = {
 | 
			
		|||
            size: number;
 | 
			
		||||
            comment: string | null;
 | 
			
		||||
            blurhash: string | null;
 | 
			
		||||
            properties: Record<string, never>;
 | 
			
		||||
            properties: {
 | 
			
		||||
              width?: number;
 | 
			
		||||
              height?: number;
 | 
			
		||||
              orientation?: number;
 | 
			
		||||
              avgColor?: string;
 | 
			
		||||
            };
 | 
			
		||||
            /** @example true */
 | 
			
		||||
            storedInternal: boolean | null;
 | 
			
		||||
            /** Format: url */
 | 
			
		||||
| 
						 | 
				
			
			@ -7189,7 +7314,12 @@ export type operations = {
 | 
			
		|||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': Record<string, never>;
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            [key: string]: {
 | 
			
		||||
              count: number;
 | 
			
		||||
              size: number;
 | 
			
		||||
            };
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
| 
						 | 
				
			
			@ -8185,7 +8315,162 @@ export type operations = {
 | 
			
		|||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': Record<string, never>;
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            email: string | null;
 | 
			
		||||
            emailVerified: boolean;
 | 
			
		||||
            autoAcceptFollowed: boolean;
 | 
			
		||||
            noCrawle: boolean;
 | 
			
		||||
            preventAiLearning: boolean;
 | 
			
		||||
            alwaysMarkNsfw: boolean;
 | 
			
		||||
            autoSensitive: boolean;
 | 
			
		||||
            carefulBot: boolean;
 | 
			
		||||
            injectFeaturedNote: boolean;
 | 
			
		||||
            receiveAnnouncementEmail: boolean;
 | 
			
		||||
            mutedWords: (string | string[])[];
 | 
			
		||||
            mutedInstances: string[];
 | 
			
		||||
            notificationRecieveConfig: {
 | 
			
		||||
              note?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              follow?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              mention?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              reply?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              renote?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              quote?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              reaction?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              pollEnded?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              receiveFollowRequest?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              followRequestAccepted?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              roleAssigned?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              achievementEarned?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              app?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
              test?: OneOf<[{
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
              }, {
 | 
			
		||||
                /** @enum {string} */
 | 
			
		||||
                type: 'list';
 | 
			
		||||
                /** Format: misskey:id */
 | 
			
		||||
                userListId: string;
 | 
			
		||||
              }]>;
 | 
			
		||||
            };
 | 
			
		||||
            isModerator: boolean;
 | 
			
		||||
            isSilenced: boolean;
 | 
			
		||||
            isSuspended: boolean;
 | 
			
		||||
            isHibernated: boolean;
 | 
			
		||||
            lastActiveDate: string | null;
 | 
			
		||||
            moderationNote: string;
 | 
			
		||||
            signins: components['schemas']['Signin'][];
 | 
			
		||||
            policies: components['schemas']['RolePolicies'];
 | 
			
		||||
            roles: components['schemas']['Role'][];
 | 
			
		||||
            roleAssigns: ({
 | 
			
		||||
                createdAt: string;
 | 
			
		||||
                expiresAt: string | null;
 | 
			
		||||
                roleId: string;
 | 
			
		||||
              })[];
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
| 
						 | 
				
			
			@ -8568,11 +8853,9 @@ export type operations = {
 | 
			
		|||
      };
 | 
			
		||||
    };
 | 
			
		||||
    responses: {
 | 
			
		||||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': unknown;
 | 
			
		||||
        };
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
| 
						 | 
				
			
			@ -15567,9 +15850,13 @@ export type operations = {
 | 
			
		|||
      };
 | 
			
		||||
    };
 | 
			
		||||
    responses: {
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            backupCodes: string[];
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
| 
						 | 
				
			
			@ -15737,7 +16024,7 @@ export type operations = {
 | 
			
		|||
        content: {
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            rp: {
 | 
			
		||||
              id: string | null;
 | 
			
		||||
              id?: string;
 | 
			
		||||
            };
 | 
			
		||||
            user: {
 | 
			
		||||
              id: string;
 | 
			
		||||
| 
						 | 
				
			
			@ -16048,11 +16335,11 @@ export type operations = {
 | 
			
		|||
          'application/json': {
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              id: string;
 | 
			
		||||
              name: string;
 | 
			
		||||
              name?: string;
 | 
			
		||||
              /** Format: date-time */
 | 
			
		||||
              createdAt: string;
 | 
			
		||||
              /** Format: date-time */
 | 
			
		||||
              lastUsedAt: string;
 | 
			
		||||
              lastUsedAt?: string;
 | 
			
		||||
              permission: string[];
 | 
			
		||||
            }[];
 | 
			
		||||
        };
 | 
			
		||||
| 
						 | 
				
			
			@ -16122,7 +16409,7 @@ export type operations = {
 | 
			
		|||
              name: string;
 | 
			
		||||
              callbackUrl: string | null;
 | 
			
		||||
              permission: string[];
 | 
			
		||||
              isAuthorized: boolean;
 | 
			
		||||
              isAuthorized?: boolean;
 | 
			
		||||
            })[];
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
| 
						 | 
				
			
			@ -17743,7 +18030,10 @@ export type operations = {
 | 
			
		|||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': Record<string, never>;
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            updatedAt: string;
 | 
			
		||||
            value: unknown;
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
| 
						 | 
				
			
			@ -17854,7 +18144,9 @@ export type operations = {
 | 
			
		|||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': Record<string, never>;
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            [key: string]: string;
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
| 
						 | 
				
			
			@ -17906,9 +18198,11 @@ export type operations = {
 | 
			
		|||
      };
 | 
			
		||||
    };
 | 
			
		||||
    responses: {
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': string[];
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
| 
						 | 
				
			
			@ -18385,7 +18679,134 @@ export type operations = {
 | 
			
		|||
          mutedWords?: (string[] | string)[];
 | 
			
		||||
          hardMutedWords?: (string[] | string)[];
 | 
			
		||||
          mutedInstances?: string[];
 | 
			
		||||
          notificationRecieveConfig?: Record<string, never>;
 | 
			
		||||
          notificationRecieveConfig?: {
 | 
			
		||||
            note?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            follow?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            mention?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            reply?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            renote?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            quote?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            reaction?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            pollEnded?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            receiveFollowRequest?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            followRequestAccepted?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            roleAssigned?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            achievementEarned?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            app?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
            test?: OneOf<[{
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'all' | 'following' | 'follower' | 'mutualFollow' | 'never';
 | 
			
		||||
            }, {
 | 
			
		||||
              /** @enum {string} */
 | 
			
		||||
              type: 'list';
 | 
			
		||||
              /** Format: misskey:id */
 | 
			
		||||
              userListId: string;
 | 
			
		||||
            }]>;
 | 
			
		||||
          };
 | 
			
		||||
          emailNotificationTypes?: string[];
 | 
			
		||||
          alsoKnownAs?: string[];
 | 
			
		||||
        };
 | 
			
		||||
| 
						 | 
				
			
			@ -23578,12 +23999,12 @@ export type operations = {
 | 
			
		|||
        content: {
 | 
			
		||||
          'application/json': {
 | 
			
		||||
            /** Format: misskey:id */
 | 
			
		||||
            id: string;
 | 
			
		||||
            id?: string;
 | 
			
		||||
            required: boolean;
 | 
			
		||||
            string: string;
 | 
			
		||||
            default: string;
 | 
			
		||||
            string?: string;
 | 
			
		||||
            default?: string;
 | 
			
		||||
            /** @default hello */
 | 
			
		||||
            nullableDefault: string | null;
 | 
			
		||||
            nullableDefault?: string | null;
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
| 
						 | 
				
			
			@ -25694,18 +26115,16 @@ export type operations = {
 | 
			
		|||
        'application/json': {
 | 
			
		||||
          score: number;
 | 
			
		||||
          seed: string;
 | 
			
		||||
          logs: unknown[];
 | 
			
		||||
          logs: number[][];
 | 
			
		||||
          gameMode: string;
 | 
			
		||||
          gameVersion: number;
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
    responses: {
 | 
			
		||||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': unknown;
 | 
			
		||||
        };
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
| 
						 | 
				
			
			@ -25767,7 +26186,7 @@ export type operations = {
 | 
			
		|||
              /** Format: misskey:id */
 | 
			
		||||
              id: string;
 | 
			
		||||
              score: number;
 | 
			
		||||
              user: components['schemas']['UserLite'];
 | 
			
		||||
              user?: components['schemas']['UserLite'];
 | 
			
		||||
            }[];
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
| 
						 | 
				
			
			@ -25819,11 +26238,9 @@ export type operations = {
 | 
			
		|||
      };
 | 
			
		||||
    };
 | 
			
		||||
    responses: {
 | 
			
		||||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': unknown;
 | 
			
		||||
        };
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
| 
						 | 
				
			
			@ -25940,9 +26357,13 @@ export type operations = {
 | 
			
		|||
      /** @description OK (with results) */
 | 
			
		||||
      200: {
 | 
			
		||||
        content: {
 | 
			
		||||
          'application/json': unknown;
 | 
			
		||||
          'application/json': components['schemas']['ReversiGameDetailed'];
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
      /** @description OK (without any results) */
 | 
			
		||||
      204: {
 | 
			
		||||
        content: never;
 | 
			
		||||
      };
 | 
			
		||||
      /** @description Client error */
 | 
			
		||||
      400: {
 | 
			
		||||
        content: {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue