From 5f77e07c069f937f7a17540c339308a595818d32 Mon Sep 17 00:00:00 2001 From: Trey Turner Date: Sun, 6 Oct 2024 02:49:03 -0500 Subject: [PATCH] feat(mocks-counterfact): create package, generate mocks and types --- README.md | 8 +- biome.json => biome.jsonc | 20 +- bun.lockb | Bin 59132 -> 172728 bytes package.json | 2 +- packages/api-client/README.md | 18 +- packages/api-client/src/config.ts | 4 +- packages/api-client/src/types.ts | 4 +- packages/mocks-counterfact/.npmignore | 2 + packages/mocks-counterfact/README.md | 3 + packages/mocks-counterfact/biome.jsonc | 21 ++ packages/mocks-counterfact/package.json | 40 +++ packages/mocks-counterfact/src/.gitignore | 1 + .../mocks-counterfact/src/routes/_.context.ts | 11 + .../src/routes/accounts/create.ts | 5 + .../src/routes/achievements.ts | 5 + .../src/routes/achievements/{code}.ts | 5 + .../src/routes/characters.ts | 5 + .../src/routes/characters/create.ts | 5 + .../src/routes/characters/delete.ts | 5 + .../src/routes/characters/{name}.ts | 5 + .../routes/characters/{name}/achievements.ts | 5 + .../mocks-counterfact/src/routes/events.ts | 5 + packages/mocks-counterfact/src/routes/ge.ts | 5 + .../mocks-counterfact/src/routes/ge/{code}.ts | 5 + .../mocks-counterfact/src/routes/index.ts | 5 + .../mocks-counterfact/src/routes/items.ts | 5 + .../src/routes/items/{code}.ts | 5 + .../src/routes/leaderboard.ts | 5 + packages/mocks-counterfact/src/routes/maps.ts | 5 + .../src/routes/maps/{x}/{y}.ts | 5 + .../mocks-counterfact/src/routes/monsters.ts | 5 + .../src/routes/monsters/{code}.ts | 5 + .../mocks-counterfact/src/routes/my/bank.ts | 5 + .../src/routes/my/bank/items.ts | 5 + .../src/routes/my/change_password.ts | 5 + .../src/routes/my/characters.ts | 5 + .../mocks-counterfact/src/routes/my/logs.ts | 5 + .../my/{name}/action/bank/buy_expansion.ts | 5 + .../routes/my/{name}/action/bank/deposit.ts | 5 + .../my/{name}/action/bank/deposit/gold.ts | 5 + .../routes/my/{name}/action/bank/withdraw.ts | 5 + .../my/{name}/action/bank/withdraw/gold.ts | 5 + .../src/routes/my/{name}/action/crafting.ts | 5 + .../src/routes/my/{name}/action/delete.ts | 5 + .../src/routes/my/{name}/action/equip.ts | 5 + .../src/routes/my/{name}/action/fight.ts | 5 + .../src/routes/my/{name}/action/gathering.ts | 5 + .../src/routes/my/{name}/action/ge/buy.ts | 5 + .../src/routes/my/{name}/action/ge/sell.ts | 5 + .../src/routes/my/{name}/action/move.ts | 5 + .../src/routes/my/{name}/action/recycling.ts | 5 + .../routes/my/{name}/action/task/cancel.ts | 5 + .../routes/my/{name}/action/task/complete.ts | 5 + .../routes/my/{name}/action/task/exchange.ts | 5 + .../src/routes/my/{name}/action/task/new.ts | 5 + .../src/routes/my/{name}/action/task/trade.ts | 5 + .../src/routes/my/{name}/action/unequip.ts | 5 + .../mocks-counterfact/src/routes/resources.ts | 5 + .../src/routes/resources/{code}.ts | 5 + .../src/routes/tasks/list.ts | 5 + .../src/routes/tasks/list/{code}.ts | 5 + .../src/routes/tasks/rewards.ts | 5 + .../src/routes/tasks/rewards/{code}.ts | 5 + .../mocks-counterfact/src/routes/token.ts | 5 + packages/mocks-counterfact/src/tsconfig.json | 7 + packages/mocks-counterfact/src/types.ts | 247 ++++++++++++++++++ .../components/schemas/AchievementSchema.ts | 11 + .../components/schemas/ActiveEventSchema.ts | 10 + .../components/schemas/AddAccountSchema.ts | 5 + .../components/schemas/AddCharacterSchema.ts | 4 + .../components/schemas/AnnouncementSchema.ts | 1 + .../components/schemas/BankExtensionSchema.ts | 1 + .../BankExtensionTransactionResponseSchema.ts | 5 + .../schemas/BankExtensionTransactionSchema.ts | 9 + .../BankGoldTransactionResponseSchema.ts | 5 + .../schemas/BankGoldTransactionSchema.ts | 9 + .../BankItemTransactionResponseSchema.ts | 5 + .../schemas/BankItemTransactionSchema.ts | 11 + .../components/schemas/BankResponseSchema.ts | 3 + .../types/components/schemas/BankSchema.ts | 6 + .../schemas/BaseAchievementSchema.ts | 9 + .../schemas/BaseachievementResponseSchema.ts | 3 + .../components/schemas/BlockedHitsSchema.ts | 7 + .../components/schemas/ChangePassword.ts | 1 + .../schemas/CharacterFightDataSchema.ts | 9 + .../schemas/CharacterFightResponseSchema.ts | 3 + .../schemas/CharacterLeaderboardSchema.ts | 22 ++ .../schemas/CharacterMovementDataSchema.ts | 9 + .../CharacterMovementResponseSchema.ts | 5 + .../schemas/CharacterResponseSchema.ts | 3 + .../components/schemas/CharacterSchema.ts | 75 ++++++ .../components/schemas/CooldownSchema.ts | 20 ++ .../types/components/schemas/CraftSchema.ts | 8 + .../components/schemas/CraftingSchema.ts | 1 + .../schemas/DataPage_AchievementSchema_.ts | 9 + .../schemas/DataPage_ActiveEventSchema_.ts | 9 + .../DataPage_BaseAchievementSchema_.ts | 9 + .../DataPage_CharacterLeaderboardSchema_.ts | 9 + .../schemas/DataPage_CharacterSchema_.ts | 9 + .../schemas/DataPage_GEItemSchema_.ts | 9 + .../schemas/DataPage_ItemSchema_.ts | 9 + .../components/schemas/DataPage_LogSchema_.ts | 9 + .../components/schemas/DataPage_MapSchema_.ts | 9 + .../schemas/DataPage_MonsterSchema_.ts | 9 + .../schemas/DataPage_ResourceSchema_.ts | 9 + .../schemas/DataPage_SimpleItemSchema_.ts | 9 + .../schemas/DataPage_TaskFullSchema_.ts | 9 + .../DataPage_TasksRewardFullSchema_.ts | 9 + .../schemas/DeleteCharacterSchema.ts | 1 + .../schemas/DeleteItemResponseSchema.ts | 3 + .../components/schemas/DeleteItemSchema.ts | 9 + .../schemas/DepositWithdrawGoldSchema.ts | 1 + .../components/schemas/DestinationSchema.ts | 1 + .../components/schemas/DropRateSchema.ts | 6 + .../types/components/schemas/DropSchema.ts | 1 + .../components/schemas/EquipRequestSchema.ts | 24 ++ .../types/components/schemas/EquipSchema.ts | 19 ++ .../schemas/EquipmentResponseSchema.ts | 3 + .../types/components/schemas/FightSchema.ts | 13 + .../schemas/GEItemResponseSchema.ts | 3 + .../types/components/schemas/GEItemSchema.ts | 7 + .../schemas/GETransactionItemSchema.ts | 5 + .../schemas/GETransactionListSchema.ts | 9 + .../schemas/GETransactionResponseSchema.ts | 3 + .../components/schemas/GETransactionSchema.ts | 6 + .../types/components/schemas/GoldSchema.ts | 1 + .../types/components/schemas/InventorySlot.ts | 1 + .../components/schemas/ItemEffectSchema.ts | 1 + .../components/schemas/ItemResponseSchema.ts | 3 + .../types/components/schemas/ItemSchema.ts | 13 + .../src/types/components/schemas/LogSchema.ts | 10 + .../components/schemas/MapContentSchema.ts | 1 + .../components/schemas/MapResponseSchema.ts | 3 + .../src/types/components/schemas/MapSchema.ts | 9 + .../schemas/MonsterResponseSchema.ts | 3 + .../types/components/schemas/MonsterSchema.ts | 19 ++ .../schemas/MyCharactersListSchema.ts | 3 + .../components/schemas/RecyclingDataSchema.ts | 9 + .../schemas/RecyclingItemsSchema.ts | 3 + .../schemas/RecyclingResponseSchema.ts | 3 + .../components/schemas/RecyclingSchema.ts | 1 + .../schemas/ResourceResponseSchema.ts | 3 + .../components/schemas/ResourceSchema.ts | 9 + .../components/schemas/ResponseSchema.ts | 1 + .../components/schemas/SimpleItemSchema.ts | 1 + .../components/schemas/SingleItemSchema.ts | 4 + .../components/schemas/SkillDataSchema.ts | 9 + .../components/schemas/SkillInfoSchema.ts | 3 + .../components/schemas/SkillResponseSchema.ts | 3 + .../schemas/StatusResponseSchema.ts | 3 + .../types/components/schemas/StatusSchema.ts | 12 + .../schemas/TaskCancelledResponseSchema.ts | 3 + .../components/schemas/TaskCancelledSchema.ts | 7 + .../components/schemas/TaskDataSchema.ts | 9 + .../schemas/TaskFullResponseSchema.ts | 3 + .../components/schemas/TaskFullSchema.ts | 8 + .../components/schemas/TaskResponseSchema.ts | 3 + .../types/components/schemas/TaskSchema.ts | 5 + .../components/schemas/TaskTradeDataSchema.ts | 9 + .../schemas/TaskTradeResponseSchema.ts | 3 + .../components/schemas/TaskTradeSchema.ts | 1 + .../schemas/TasksRewardDataSchema.ts | 9 + .../schemas/TasksRewardFullResponseSchema.ts | 3 + .../schemas/TasksRewardFullSchema.ts | 6 + .../schemas/TasksRewardResponseSchema.ts | 3 + .../components/schemas/TasksRewardSchema.ts | 1 + .../components/schemas/TokenResponseSchema.ts | 1 + .../types/components/schemas/UnequipSchema.ts | 18 ++ .../src/types/paths/accounts/create.types.ts | 59 +++++ .../src/types/paths/achievements.types.ts | 46 ++++ .../types/paths/achievements/{code}.types.ts | 50 ++++ .../src/types/paths/characters.types.ts | 42 +++ .../types/paths/characters/create.types.ts | 59 +++++ .../types/paths/characters/delete.types.ts | 51 ++++ .../types/paths/characters/{name}.types.ts | 50 ++++ .../characters/{name}/achievements.types.ts | 63 +++++ .../src/types/paths/events.types.ts | 42 +++ .../src/types/paths/ge.types.ts | 42 +++ .../src/types/paths/ge/{code}.types.ts | 50 ++++ .../src/types/paths/index.types.ts | 42 +++ .../src/types/paths/items.types.ts | 63 +++++ .../src/types/paths/items/{code}.types.ts | 50 ++++ .../src/types/paths/leaderboard.types.ts | 56 ++++ .../src/types/paths/maps.types.ts | 47 ++++ .../src/types/paths/maps/{x}/{y}.types.ts | 50 ++++ .../src/types/paths/monsters.types.ts | 48 ++++ .../src/types/paths/monsters/{code}.types.ts | 50 ++++ .../src/types/paths/my/bank.types.ts | 42 +++ .../src/types/paths/my/bank/items.types.ts | 42 +++ .../types/paths/my/change_password.types.ts | 51 ++++ .../src/types/paths/my/characters.types.ts | 42 +++ .../src/types/paths/my/logs.types.ts | 58 ++++ .../{name}/action/bank/buy_expansion.types.ts | 82 ++++++ .../my/{name}/action/bank/deposit.types.ts | 107 ++++++++ .../{name}/action/bank/deposit/gold.types.ts | 91 +++++++ .../my/{name}/action/bank/withdraw.types.ts | 107 ++++++++ .../{name}/action/bank/withdraw/gold.types.ts | 91 +++++++ .../paths/my/{name}/action/crafting.types.ts | 107 ++++++++ .../paths/my/{name}/action/delete.types.ts | 75 ++++++ .../paths/my/{name}/action/equip.types.ts | 123 +++++++++ .../paths/my/{name}/action/fight.types.ts | 82 ++++++ .../paths/my/{name}/action/gathering.types.ts | 90 +++++++ .../paths/my/{name}/action/ge/buy.types.ts | 123 +++++++++ .../paths/my/{name}/action/ge/sell.types.ts | 115 ++++++++ .../paths/my/{name}/action/move.types.ts | 83 ++++++ .../paths/my/{name}/action/recycling.types.ts | 115 ++++++++ .../my/{name}/action/task/cancel.types.ts | 82 ++++++ .../my/{name}/action/task/complete.types.ts | 98 +++++++ .../my/{name}/action/task/exchange.types.ts | 90 +++++++ .../paths/my/{name}/action/task/new.types.ts | 82 ++++++ .../my/{name}/action/task/trade.types.ts | 99 +++++++ .../paths/my/{name}/action/unequip.types.ts | 99 +++++++ .../src/types/paths/resources.types.ts | 49 ++++ .../src/types/paths/resources/{code}.types.ts | 50 ++++ .../src/types/paths/tasks/list.types.ts | 49 ++++ .../types/paths/tasks/list/{code}.types.ts | 50 ++++ .../src/types/paths/tasks/rewards.types.ts | 42 +++ .../types/paths/tasks/rewards/{code}.types.ts | 50 ++++ .../src/types/paths/token.types.ts | 50 ++++ packages/mocks-counterfact/test/tsconfig.json | 8 + release-please-config.json | 17 +- 221 files changed, 4838 insertions(+), 29 deletions(-) rename biome.json => biome.jsonc (69%) create mode 100644 packages/mocks-counterfact/.npmignore create mode 100644 packages/mocks-counterfact/README.md create mode 100644 packages/mocks-counterfact/biome.jsonc create mode 100644 packages/mocks-counterfact/package.json create mode 100644 packages/mocks-counterfact/src/.gitignore create mode 100644 packages/mocks-counterfact/src/routes/_.context.ts create mode 100644 packages/mocks-counterfact/src/routes/accounts/create.ts create mode 100644 packages/mocks-counterfact/src/routes/achievements.ts create mode 100644 packages/mocks-counterfact/src/routes/achievements/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/characters.ts create mode 100644 packages/mocks-counterfact/src/routes/characters/create.ts create mode 100644 packages/mocks-counterfact/src/routes/characters/delete.ts create mode 100644 packages/mocks-counterfact/src/routes/characters/{name}.ts create mode 100644 packages/mocks-counterfact/src/routes/characters/{name}/achievements.ts create mode 100644 packages/mocks-counterfact/src/routes/events.ts create mode 100644 packages/mocks-counterfact/src/routes/ge.ts create mode 100644 packages/mocks-counterfact/src/routes/ge/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/index.ts create mode 100644 packages/mocks-counterfact/src/routes/items.ts create mode 100644 packages/mocks-counterfact/src/routes/items/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/leaderboard.ts create mode 100644 packages/mocks-counterfact/src/routes/maps.ts create mode 100644 packages/mocks-counterfact/src/routes/maps/{x}/{y}.ts create mode 100644 packages/mocks-counterfact/src/routes/monsters.ts create mode 100644 packages/mocks-counterfact/src/routes/monsters/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/my/bank.ts create mode 100644 packages/mocks-counterfact/src/routes/my/bank/items.ts create mode 100644 packages/mocks-counterfact/src/routes/my/change_password.ts create mode 100644 packages/mocks-counterfact/src/routes/my/characters.ts create mode 100644 packages/mocks-counterfact/src/routes/my/logs.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/bank/buy_expansion.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit/gold.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw/gold.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/crafting.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/delete.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/equip.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/fight.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/gathering.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/ge/buy.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/ge/sell.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/move.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/recycling.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/task/cancel.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/task/complete.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/task/exchange.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/task/new.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/task/trade.ts create mode 100644 packages/mocks-counterfact/src/routes/my/{name}/action/unequip.ts create mode 100644 packages/mocks-counterfact/src/routes/resources.ts create mode 100644 packages/mocks-counterfact/src/routes/resources/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/tasks/list.ts create mode 100644 packages/mocks-counterfact/src/routes/tasks/list/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/tasks/rewards.ts create mode 100644 packages/mocks-counterfact/src/routes/tasks/rewards/{code}.ts create mode 100644 packages/mocks-counterfact/src/routes/token.ts create mode 100644 packages/mocks-counterfact/src/tsconfig.json create mode 100644 packages/mocks-counterfact/src/types.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/AchievementSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ActiveEventSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/AddAccountSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/AddCharacterSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/AnnouncementSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankExtensionSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BankSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BaseAchievementSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BaseachievementResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/BlockedHitsSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ChangePassword.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterFightDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterFightResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterLeaderboardSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterMovementDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterMovementResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CharacterSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CooldownSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CraftSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/CraftingSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_AchievementSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_ActiveEventSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_BaseAchievementSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterLeaderboardSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_GEItemSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_ItemSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_LogSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_MapSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_MonsterSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_ResourceSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_SimpleItemSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_TaskFullSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DataPage_TasksRewardFullSchema_.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DeleteCharacterSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DeleteItemResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DeleteItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DepositWithdrawGoldSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DestinationSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DropRateSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/DropSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/EquipRequestSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/EquipSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/EquipmentResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/FightSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GEItemResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GEItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GETransactionItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GETransactionListSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GETransactionResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GETransactionSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/GoldSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/InventorySlot.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ItemEffectSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ItemResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/LogSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MapContentSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MapResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MapSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MonsterResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MonsterSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/MyCharactersListSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/RecyclingDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/RecyclingItemsSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/RecyclingResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/RecyclingSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ResourceResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ResourceSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/ResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/SimpleItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/SingleItemSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/SkillDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/SkillInfoSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/SkillResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/StatusResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/StatusSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskCancelledResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskCancelledSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskFullResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskFullSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskTradeDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskTradeResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TaskTradeSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TasksRewardDataSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TasksRewardResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TasksRewardSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/TokenResponseSchema.ts create mode 100644 packages/mocks-counterfact/src/types/components/schemas/UnequipSchema.ts create mode 100644 packages/mocks-counterfact/src/types/paths/accounts/create.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/achievements.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/achievements/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/characters.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/characters/create.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/characters/delete.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/characters/{name}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/characters/{name}/achievements.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/events.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/ge.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/ge/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/index.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/items.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/items/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/leaderboard.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/maps.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/maps/{x}/{y}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/monsters.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/monsters/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/bank.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/bank/items.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/change_password.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/characters.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/logs.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/buy_expansion.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit/gold.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw/gold.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/crafting.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/delete.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/equip.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/fight.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/gathering.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/buy.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/sell.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/move.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/recycling.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/task/cancel.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/task/complete.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/task/exchange.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/task/new.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/task/trade.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/my/{name}/action/unequip.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/resources.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/resources/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/tasks/list.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/tasks/list/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/tasks/rewards.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/tasks/rewards/{code}.types.ts create mode 100644 packages/mocks-counterfact/src/types/paths/token.types.ts create mode 100644 packages/mocks-counterfact/test/tsconfig.json diff --git a/README.md b/README.md index b7461e0..f7f57f7 100644 --- a/README.md +++ b/README.md @@ -4,9 +4,11 @@ Monorepo for TypeScript packages related to [Artifacts MMO](https://artifactsmmo ## Packages -| Name | Folder | Description | -|--------------------------------------------------------------------------------------------------------|--------------------------------------|----------------------------------| -| [`@trey.turner/artifacts-api-client`](https://www.npmjs.com/package/@trey.turner/artifacts-api-client) | [`api-client`](packages/api-client/) | Typed and promisified API client | +| Folder | Name | Description | +|----------------------------------------------------|----------------------------------------------------------------------------------------------------------------------|-------------------------------------------| +| [`api-client`](packages/api-client/) | [`@trey.turner/artifacts-api-client`](https://www.npmjs.com/package/@trey.turner/artifacts-api-client) | Typed and promisified API client in ESM | +| [`mocks-counterfact`](packages/mocks-counterfact/) | [`@trey.turner/artifacts-mocks-counterfact`](https://www.npmjs.com/package/@trey.turner/artifacts-mocks-counterfact) | Mocks & types generated from OpenAPI spec | +| [`sandbox`](packages/api-client/) | Not published | Code staging area | ## Tooling diff --git a/biome.json b/biome.jsonc similarity index 69% rename from biome.json rename to biome.jsonc index e43229f..5ee92c8 100644 --- a/biome.json +++ b/biome.jsonc @@ -39,5 +39,23 @@ "formatter": { "trailingCommas": "none" } - } + }, + "overrides": [ + { + "include": ["packages/mocks-counterfact/src/types.ts"], + "linter": { + "rules": { + "suspicious": { + "noExplicitAny": "off" + }, + "correctness": { + "noUnusedVariables": "off" + }, + "complexity": { + "noBannedTypes": "off" + } + } + } + } + ] } diff --git a/bun.lockb b/bun.lockb index 416a4496b99fe9de277b208098bc9858317b2a18..40fe6b0e495fea3b97cb9e50f4ffea1ca05745e6 100755 GIT binary patch literal 172728 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 z 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 I|IO!r0pL=U1poj5 delta 8438 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 wO6pY~KT|yHye=MlUJ): proposed is Config { } if (!/https?:\/\/.+\..+/.test(proposed.apiHost ?? "")) { - log(getCallerName(), `Supplied apiHost '${proposed.apiHost}' is invalid`, { logFn: console.error }); + log(getCallerName(), `Supplied apiHost '${proposed.apiHost}' is invalid`, { + logFn: console.error, + }); return false; } diff --git a/packages/api-client/src/types.ts b/packages/api-client/src/types.ts index 902719f..80c32a3 100644 --- a/packages/api-client/src/types.ts +++ b/packages/api-client/src/types.ts @@ -197,7 +197,9 @@ export type DataPage< }; /** Rolled up result of multiple bank item transactions */ -export type BankItems = Omit & { items: Item[] }; +export type BankItems = Omit & { + items: Item[]; +}; /** Utility types */ export type RecursivePartial = { [P in keyof T]?: RecursivePartial }; diff --git a/packages/mocks-counterfact/.npmignore b/packages/mocks-counterfact/.npmignore new file mode 100644 index 0000000..f05b1f2 --- /dev/null +++ b/packages/mocks-counterfact/.npmignore @@ -0,0 +1,2 @@ +node_modules +test diff --git a/packages/mocks-counterfact/README.md b/packages/mocks-counterfact/README.md new file mode 100644 index 0000000..5920199 --- /dev/null +++ b/packages/mocks-counterfact/README.md @@ -0,0 +1,3 @@ +# artifacts-mocks-counterfact + +Mocks of Artifacts MMO API generated from their published OpenAPI specification using counterfact. diff --git a/packages/mocks-counterfact/biome.jsonc b/packages/mocks-counterfact/biome.jsonc new file mode 100644 index 0000000..6b535bd --- /dev/null +++ b/packages/mocks-counterfact/biome.jsonc @@ -0,0 +1,21 @@ +{ + "extends": ["../../biome.jsonc"], + "overrides": [ + { + "include": ["src/types.ts"], + "linter": { + "rules": { + "suspicious": { + "noExplicitAny": "off" + }, + "correctness": { + "noUnusedVariables": "off" + }, + "complexity": { + "noBannedTypes": "off" + } + } + } + } + ] +} diff --git a/packages/mocks-counterfact/package.json b/packages/mocks-counterfact/package.json new file mode 100644 index 0000000..f8337dc --- /dev/null +++ b/packages/mocks-counterfact/package.json @@ -0,0 +1,40 @@ +{ + "name": "@trey.turner/artifacts-mocks-counterfact", + "version": "0.0.1", + "module": "index.ts", + "main": "dist/index.js", + "types": "dist/types.d.ts", + "type": "module", + "repository": { + "type": "git", + "url": "https://github.com/treyturner/ts-artifacts.git" + }, + "scripts": { + "build": "tsc -p src/tsconfig.json", + "check": "bun run --silent lint && bun run --silent format && bun run --silent typecheck", + "check:fix": "bun run --silent lint:fix && bun run --silent format:fix && bun run --silent typecheck", + "clean": "bun run --silent clean:build && bun run --silent clean:deps", + "clean:build": "rm -rf dist", + "clean:deps": "rm -rf node_modules bun.lockb", + "format": "biome format src/ test/", + "format:fix": "biome format --write src/ test/", + "generate": "bun run counterfact -g https://api.artifactsmmo.com/openapi.json src", + "lint": "biome lint --error-on-warnings src/ test/", + "lint:fix": "biome lint --error-on-warnings --fix src/ test/", + "open": "bun run counterfact -o https://api.artifactsmmo.com/openapi.json src", + "repl": "bun run counterfact -wrs https://api.artifactsmmo.com/openapi.json src", + "start": "bun run watch", + "typecheck": "tsc -p src/tsconfig.json && tsc --noEmit -p test/tsconfig.json", + "watch": "bun run counterfact -ws https://api.artifactsmmo.com/openapi.json src" + }, + "dependencies": { + "counterfact": "1.1.0" + }, + "devDependencies": { + "@types/bun": "latest", + "typescript": "5.6.2" + }, + "peerDependencies": { + "typescript": "^5.0.0" + } +} diff --git a/packages/mocks-counterfact/src/.gitignore b/packages/mocks-counterfact/src/.gitignore new file mode 100644 index 0000000..16d3c4d --- /dev/null +++ b/packages/mocks-counterfact/src/.gitignore @@ -0,0 +1 @@ +.cache diff --git a/packages/mocks-counterfact/src/routes/_.context.ts b/packages/mocks-counterfact/src/routes/_.context.ts new file mode 100644 index 0000000..7ae9a0c --- /dev/null +++ b/packages/mocks-counterfact/src/routes/_.context.ts @@ -0,0 +1,11 @@ +/** + * This is the default context for Counterfact. + * + * It defines the context object in the REPL + * and the $.context object in the code. + * + * Add properties and methods to suit your needs. + * + * See https://counterfact.dev/docs/usage.html#working-with-state-the-codecontextcode-object-and-codecontexttscode + */ +export class Context {} diff --git a/packages/mocks-counterfact/src/routes/accounts/create.ts b/packages/mocks-counterfact/src/routes/accounts/create.ts new file mode 100644 index 0000000..30b0032 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/accounts/create.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../types/paths/accounts/create.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/achievements.ts b/packages/mocks-counterfact/src/routes/achievements.ts new file mode 100644 index 0000000..d0c464a --- /dev/null +++ b/packages/mocks-counterfact/src/routes/achievements.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/achievements.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/achievements/{code}.ts b/packages/mocks-counterfact/src/routes/achievements/{code}.ts new file mode 100644 index 0000000..389590f --- /dev/null +++ b/packages/mocks-counterfact/src/routes/achievements/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/achievements/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/characters.ts b/packages/mocks-counterfact/src/routes/characters.ts new file mode 100644 index 0000000..30144ed --- /dev/null +++ b/packages/mocks-counterfact/src/routes/characters.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/characters.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/characters/create.ts b/packages/mocks-counterfact/src/routes/characters/create.ts new file mode 100644 index 0000000..dcf365b --- /dev/null +++ b/packages/mocks-counterfact/src/routes/characters/create.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../types/paths/characters/create.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/characters/delete.ts b/packages/mocks-counterfact/src/routes/characters/delete.ts new file mode 100644 index 0000000..1adb5a2 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/characters/delete.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../types/paths/characters/delete.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/characters/{name}.ts b/packages/mocks-counterfact/src/routes/characters/{name}.ts new file mode 100644 index 0000000..cc2c26f --- /dev/null +++ b/packages/mocks-counterfact/src/routes/characters/{name}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/characters/{name}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/characters/{name}/achievements.ts b/packages/mocks-counterfact/src/routes/characters/{name}/achievements.ts new file mode 100644 index 0000000..75b6c75 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/characters/{name}/achievements.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../../types/paths/characters/{name}/achievements.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/events.ts b/packages/mocks-counterfact/src/routes/events.ts new file mode 100644 index 0000000..0acf498 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/events.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/events.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/ge.ts b/packages/mocks-counterfact/src/routes/ge.ts new file mode 100644 index 0000000..fe33c2b --- /dev/null +++ b/packages/mocks-counterfact/src/routes/ge.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/ge.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/ge/{code}.ts b/packages/mocks-counterfact/src/routes/ge/{code}.ts new file mode 100644 index 0000000..d32d26a --- /dev/null +++ b/packages/mocks-counterfact/src/routes/ge/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/ge/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/index.ts b/packages/mocks-counterfact/src/routes/index.ts new file mode 100644 index 0000000..5f87ae9 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/index.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/index.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/items.ts b/packages/mocks-counterfact/src/routes/items.ts new file mode 100644 index 0000000..e08d006 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/items.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/items.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/items/{code}.ts b/packages/mocks-counterfact/src/routes/items/{code}.ts new file mode 100644 index 0000000..41f3209 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/items/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/items/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/leaderboard.ts b/packages/mocks-counterfact/src/routes/leaderboard.ts new file mode 100644 index 0000000..d6ef523 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/leaderboard.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/leaderboard.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/maps.ts b/packages/mocks-counterfact/src/routes/maps.ts new file mode 100644 index 0000000..32ea91b --- /dev/null +++ b/packages/mocks-counterfact/src/routes/maps.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/maps.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/maps/{x}/{y}.ts b/packages/mocks-counterfact/src/routes/maps/{x}/{y}.ts new file mode 100644 index 0000000..54cf3b1 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/maps/{x}/{y}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../../types/paths/maps/{x}/{y}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/monsters.ts b/packages/mocks-counterfact/src/routes/monsters.ts new file mode 100644 index 0000000..3668602 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/monsters.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/monsters.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/monsters/{code}.ts b/packages/mocks-counterfact/src/routes/monsters/{code}.ts new file mode 100644 index 0000000..07ecf59 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/monsters/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/monsters/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/bank.ts b/packages/mocks-counterfact/src/routes/my/bank.ts new file mode 100644 index 0000000..a02d31d --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/bank.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/my/bank.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/bank/items.ts b/packages/mocks-counterfact/src/routes/my/bank/items.ts new file mode 100644 index 0000000..2f2cdab --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/bank/items.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../../types/paths/my/bank/items.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/change_password.ts b/packages/mocks-counterfact/src/routes/my/change_password.ts new file mode 100644 index 0000000..8450bde --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/change_password.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../types/paths/my/change_password.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/characters.ts b/packages/mocks-counterfact/src/routes/my/characters.ts new file mode 100644 index 0000000..4f3554f --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/characters.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/my/characters.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/logs.ts b/packages/mocks-counterfact/src/routes/my/logs.ts new file mode 100644 index 0000000..c4d040c --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/logs.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/my/logs.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/bank/buy_expansion.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/buy_expansion.ts new file mode 100644 index 0000000..ddb3a72 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/buy_expansion.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/bank/buy_expansion.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit.ts new file mode 100644 index 0000000..f92e82f --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/bank/deposit.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit/gold.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit/gold.ts new file mode 100644 index 0000000..098bebb --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/deposit/gold.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../../types/paths/my/{name}/action/bank/deposit/gold.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw.ts new file mode 100644 index 0000000..ccad2f7 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/bank/withdraw.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw/gold.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw/gold.ts new file mode 100644 index 0000000..f3b1d27 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/bank/withdraw/gold.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../../types/paths/my/{name}/action/bank/withdraw/gold.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/crafting.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/crafting.ts new file mode 100644 index 0000000..0b9a3a3 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/crafting.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/crafting.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/delete.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/delete.ts new file mode 100644 index 0000000..0ba1be2 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/delete.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/delete.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/equip.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/equip.ts new file mode 100644 index 0000000..48e8db6 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/equip.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/equip.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/fight.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/fight.ts new file mode 100644 index 0000000..4805c39 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/fight.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/fight.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/gathering.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/gathering.ts new file mode 100644 index 0000000..876858e --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/gathering.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/gathering.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/ge/buy.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/ge/buy.ts new file mode 100644 index 0000000..71771c4 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/ge/buy.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/ge/buy.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/ge/sell.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/ge/sell.ts new file mode 100644 index 0000000..0d18d98 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/ge/sell.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/ge/sell.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/move.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/move.ts new file mode 100644 index 0000000..f3bd9ec --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/move.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/move.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/recycling.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/recycling.ts new file mode 100644 index 0000000..d82d4f5 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/recycling.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/recycling.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/task/cancel.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/task/cancel.ts new file mode 100644 index 0000000..cb19eb2 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/task/cancel.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/task/cancel.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/task/complete.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/task/complete.ts new file mode 100644 index 0000000..97bd948 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/task/complete.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/task/complete.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/task/exchange.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/task/exchange.ts new file mode 100644 index 0000000..f45ce5d --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/task/exchange.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/task/exchange.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/task/new.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/task/new.ts new file mode 100644 index 0000000..b1d8bdd --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/task/new.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/task/new.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/task/trade.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/task/trade.ts new file mode 100644 index 0000000..8c052e0 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/task/trade.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../../types/paths/my/{name}/action/task/trade.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/my/{name}/action/unequip.ts b/packages/mocks-counterfact/src/routes/my/{name}/action/unequip.ts new file mode 100644 index 0000000..4f31778 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/my/{name}/action/unequip.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../../../../types/paths/my/{name}/action/unequip.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/resources.ts b/packages/mocks-counterfact/src/routes/resources.ts new file mode 100644 index 0000000..237f572 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/resources.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../types/paths/resources.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/resources/{code}.ts b/packages/mocks-counterfact/src/routes/resources/{code}.ts new file mode 100644 index 0000000..7b421c0 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/resources/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/resources/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/tasks/list.ts b/packages/mocks-counterfact/src/routes/tasks/list.ts new file mode 100644 index 0000000..6e90cae --- /dev/null +++ b/packages/mocks-counterfact/src/routes/tasks/list.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/tasks/list.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/tasks/list/{code}.ts b/packages/mocks-counterfact/src/routes/tasks/list/{code}.ts new file mode 100644 index 0000000..71158ab --- /dev/null +++ b/packages/mocks-counterfact/src/routes/tasks/list/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../../types/paths/tasks/list/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/tasks/rewards.ts b/packages/mocks-counterfact/src/routes/tasks/rewards.ts new file mode 100644 index 0000000..1e13a6b --- /dev/null +++ b/packages/mocks-counterfact/src/routes/tasks/rewards.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../types/paths/tasks/rewards.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/tasks/rewards/{code}.ts b/packages/mocks-counterfact/src/routes/tasks/rewards/{code}.ts new file mode 100644 index 0000000..602ef30 --- /dev/null +++ b/packages/mocks-counterfact/src/routes/tasks/rewards/{code}.ts @@ -0,0 +1,5 @@ +import type { HTTP_GET } from "../../../types/paths/tasks/rewards/{code}.types.js"; + +export const GET: HTTP_GET = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/routes/token.ts b/packages/mocks-counterfact/src/routes/token.ts new file mode 100644 index 0000000..b326cac --- /dev/null +++ b/packages/mocks-counterfact/src/routes/token.ts @@ -0,0 +1,5 @@ +import type { HTTP_POST } from "../types/paths/token.types.js"; + +export const POST: HTTP_POST = ($) => { + return $.response[200].random(); +}; diff --git a/packages/mocks-counterfact/src/tsconfig.json b/packages/mocks-counterfact/src/tsconfig.json new file mode 100644 index 0000000..0f584a7 --- /dev/null +++ b/packages/mocks-counterfact/src/tsconfig.json @@ -0,0 +1,7 @@ +{ + "extends": "../../../tsconfig-base.json", + "compilerOptions": { + "composite": true, + "outDir": "../dist" + } +} diff --git a/packages/mocks-counterfact/src/types.ts b/packages/mocks-counterfact/src/types.ts new file mode 100644 index 0000000..fbdaab7 --- /dev/null +++ b/packages/mocks-counterfact/src/types.ts @@ -0,0 +1,247 @@ +interface OpenApiHeader { + schema: unknown; +} + +interface OpenApiContent { + schema: unknown; +} + +interface Example { + description: string; + summary: string; + value: unknown; +} + +const counterfactResponse = Symbol("Counterfact Response"); + +const counterfactResponseObject = { + [counterfactResponse]: counterfactResponse, +}; + +type COUNTERFACT_RESPONSE = typeof counterfactResponseObject; + +type MediaType = `${string}/${string}`; + +type OmitAll = { + [P in keyof T as P extends K[number] ? never : P]: T[P]; +}; + +type OmitValueWhenNever = Pick< + Base, + { + [Key in keyof Base]: [Base[Key]] extends [never] ? never : Key; + }[keyof Base] +>; + +interface OpenApiResponse { + content: { [key: MediaType]: OpenApiContent }; + headers: { [key: string]: OpenApiHeader }; + requiredHeaders: string; +} + +interface OpenApiResponses { + [key: string]: OpenApiResponse; +} + +type IfHasKey = Keys extends [infer FirstKey, ...infer RestKeys] + ? FirstKey extends keyof SomeObject + ? Yes + : RestKeys extends (keyof any)[] + ? IfHasKey + : No + : No; + +type SchemasOf = { + [K in keyof T]: T[K]["schema"]; +}[keyof T]; + +type MaybeShortcut = IfHasKey< + Response["content"], + ContentTypes, + (body: SchemasOf) => GenericResponseBuilder<{ + content: NeverIfEmpty>; + headers: Response["headers"]; + requiredHeaders: Response["requiredHeaders"]; + }>, + never +>; + +type NeverIfEmpty = {} extends Record ? never : Record; + +type MatchFunction = ( + contentType: ContentType, + body: Response["content"][ContentType]["schema"], +) => GenericResponseBuilder<{ + content: NeverIfEmpty>; + headers: Response["headers"]; + requiredHeaders: Response["requiredHeaders"]; +}>; + +type HeaderFunction =
( + header: Header, + value: Response["headers"][Header]["schema"], +) => GenericResponseBuilder<{ + content: NeverIfEmpty; + headers: NeverIfEmpty>; + requiredHeaders: Exclude; +}>; + +type RandomFunction = < + Header extends string & keyof Response["headers"], +>() => COUNTERFACT_RESPONSE; + +interface ResponseBuilder { + [status: number | `${number} ${string}`]: ResponseBuilder; + content?: { body: unknown; type: string }[]; + header: (name: string, value: string) => ResponseBuilder; + headers: { [name: string]: string }; + html: (body: unknown) => ResponseBuilder; + json: (body: unknown) => ResponseBuilder; + match: (contentType: string, body: unknown) => ResponseBuilder; + random: () => ResponseBuilder; + randomLegacy: () => ResponseBuilder; + status?: number; + text: (body: unknown) => ResponseBuilder; + xml: (body: unknown) => ResponseBuilder; +} + +type GenericResponseBuilderInner = OmitValueWhenNever<{ + header: [keyof Response["headers"]] extends [never] ? never : HeaderFunction; + html: MaybeShortcut<["text/html"], Response>; + json: MaybeShortcut<["application/json", "text/json", "text/x-json", "application/xml", "text/xml"], Response>; + match: [keyof Response["content"]] extends [never] ? never : MatchFunction; + random: [keyof Response["content"]] extends [never] ? never : RandomFunction; + text: MaybeShortcut<["text/plain"], Response>; + xml: MaybeShortcut<["application/xml", "text/xml"], Response>; +}>; + +type GenericResponseBuilder = + object extends OmitValueWhenNever + ? COUNTERFACT_RESPONSE + : keyof OmitValueWhenNever extends "headers" + ? { + ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE; + header: HeaderFunction; + } + : GenericResponseBuilderInner; + +type ResponseBuilderFactory = { + [StatusCode in keyof Responses]: GenericResponseBuilder; +} & { [key: string]: GenericResponseBuilder }; + +type HttpStatusCode = + | 100 + | 101 + | 102 + | 200 + | 201 + | 202 + | 203 + | 204 + | 205 + | 206 + | 207 + | 226 + | 300 + | 301 + | 302 + | 303 + | 304 + | 305 + | 307 + | 308 + | 400 + | 401 + | 402 + | 403 + | 404 + | 405 + | 406 + | 407 + | 408 + | 409 + | 410 + | 411 + | 412 + | 413 + | 414 + | 415 + | 416 + | 417 + | 418 + | 422 + | 423 + | 424 + | 426 + | 428 + | 429 + | 431 + | 451 + | 500 + | 501 + | 502 + | 503 + | 504 + | 505 + | 506 + | 507 + | 511; + +interface OpenApiParameters { + in: "body" | "cookie" | "formData" | "header" | "path" | "query"; + name: string; + schema?: { + type: string; + }; +} + +interface OpenApiOperation { + parameters?: OpenApiParameters[]; + produces?: string[]; + responses: { + [status: string]: { + content?: { + [type: number | string]: { + examples?: { [key: string]: Example }; + schema: { [key: string]: unknown }; + }; + }; + examples?: { [key: string]: unknown }; + schema?: { [key: string]: unknown }; + }; + }; +} + +interface WideResponseBuilder { + header: (body: unknown) => WideResponseBuilder; + html: (body: unknown) => WideResponseBuilder; + json: (body: unknown) => WideResponseBuilder; + match: (contentType: string, body: unknown) => WideResponseBuilder; + random: () => WideResponseBuilder; + text: (body: unknown) => WideResponseBuilder; + xml: (body: unknown) => WideResponseBuilder; +} + +interface WideOperationArgument { + body: unknown; + context: unknown; + header: { [key: string]: string }; + path: { [key: string]: string }; + proxy: (url: string) => { proxyUrl: string }; + query: { [key: string]: string }; + response: { [key: number]: WideResponseBuilder }; +} + +export type { COUNTERFACT_RESPONSE }; + +export type { + HttpStatusCode, + MediaType, + OmitValueWhenNever, + OpenApiOperation, + OpenApiParameters, + OpenApiResponse, + ResponseBuilder, + ResponseBuilderFactory, + WideOperationArgument, +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/AchievementSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/AchievementSchema.ts new file mode 100644 index 0000000..6091832 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/AchievementSchema.ts @@ -0,0 +1,11 @@ +export type AchievementSchema = { + name: string; + code: string; + description: string; + points: number; + type: "combat_kill" | "combat_drop" | "combat_level" | "gathering" | "crafting" | "recycling" | "task" | "other"; + target: string | null; + total: number; + current: number; + completed_at: string | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ActiveEventSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ActiveEventSchema.ts new file mode 100644 index 0000000..d2125b7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ActiveEventSchema.ts @@ -0,0 +1,10 @@ +import type { MapSchema } from "./MapSchema.js"; + +export type ActiveEventSchema = { + name: string; + map: MapSchema; + previous_skin: string; + duration: number; + expiration: string; + created_at: string; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/AddAccountSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/AddAccountSchema.ts new file mode 100644 index 0000000..b2ff60a --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/AddAccountSchema.ts @@ -0,0 +1,5 @@ +export type AddAccountSchema = { + username: string; + password: string; + email: string; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/AddCharacterSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/AddCharacterSchema.ts new file mode 100644 index 0000000..af3c0f0 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/AddCharacterSchema.ts @@ -0,0 +1,4 @@ +export type AddCharacterSchema = { + name: string; + skin: "men1" | "men2" | "men3" | "women1" | "women2" | "women3"; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/AnnouncementSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/AnnouncementSchema.ts new file mode 100644 index 0000000..d6c46ac --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/AnnouncementSchema.ts @@ -0,0 +1 @@ +export type AnnouncementSchema = { message: string; created_at?: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankExtensionSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionSchema.ts new file mode 100644 index 0000000..6721822 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionSchema.ts @@ -0,0 +1 @@ +export type BankExtensionSchema = { price: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionResponseSchema.ts new file mode 100644 index 0000000..d495ded --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionResponseSchema.ts @@ -0,0 +1,5 @@ +import type { BankExtensionTransactionSchema } from "./BankExtensionTransactionSchema.js"; + +export type BankExtensionTransactionResponseSchema = { + data: BankExtensionTransactionSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionSchema.ts new file mode 100644 index 0000000..6982db9 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankExtensionTransactionSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { BankExtensionSchema } from "./BankExtensionSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type BankExtensionTransactionSchema = { + cooldown: CooldownSchema; + transaction: BankExtensionSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionResponseSchema.ts new file mode 100644 index 0000000..c7a732a --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionResponseSchema.ts @@ -0,0 +1,5 @@ +import type { BankGoldTransactionSchema } from "./BankGoldTransactionSchema.js"; + +export type BankGoldTransactionResponseSchema = { + data: BankGoldTransactionSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionSchema.ts new file mode 100644 index 0000000..0fcc7ad --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankGoldTransactionSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { GoldSchema } from "./GoldSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type BankGoldTransactionSchema = { + cooldown: CooldownSchema; + bank: GoldSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionResponseSchema.ts new file mode 100644 index 0000000..7bad559 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionResponseSchema.ts @@ -0,0 +1,5 @@ +import type { BankItemTransactionSchema } from "./BankItemTransactionSchema.js"; + +export type BankItemTransactionResponseSchema = { + data: BankItemTransactionSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionSchema.ts new file mode 100644 index 0000000..8b588cf --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankItemTransactionSchema.ts @@ -0,0 +1,11 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { ItemSchema } from "./ItemSchema.js"; +import type { SimpleItemSchema } from "./SimpleItemSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type BankItemTransactionSchema = { + cooldown: CooldownSchema; + item: ItemSchema; + bank: Array; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankResponseSchema.ts new file mode 100644 index 0000000..5a4efd7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankResponseSchema.ts @@ -0,0 +1,3 @@ +import type { BankSchema } from "./BankSchema.js"; + +export type BankResponseSchema = { data: BankSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BankSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BankSchema.ts new file mode 100644 index 0000000..1754efc --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BankSchema.ts @@ -0,0 +1,6 @@ +export type BankSchema = { + slots: number; + expansions: number; + next_expansion_cost: number; + gold: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BaseAchievementSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BaseAchievementSchema.ts new file mode 100644 index 0000000..2a97eb7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BaseAchievementSchema.ts @@ -0,0 +1,9 @@ +export type BaseAchievementSchema = { + name: string; + code: string; + description: string; + points: number; + type: "combat_kill" | "combat_drop" | "combat_level" | "gathering" | "crafting" | "recycling" | "task" | "other"; + target: string | null; + total: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BaseachievementResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BaseachievementResponseSchema.ts new file mode 100644 index 0000000..d4625a7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BaseachievementResponseSchema.ts @@ -0,0 +1,3 @@ +import type { BaseAchievementSchema } from "./BaseAchievementSchema.js"; + +export type BaseachievementResponseSchema = { data: BaseAchievementSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/BlockedHitsSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/BlockedHitsSchema.ts new file mode 100644 index 0000000..565c6a3 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/BlockedHitsSchema.ts @@ -0,0 +1,7 @@ +export type BlockedHitsSchema = { + fire: number; + earth: number; + water: number; + air: number; + total: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ChangePassword.ts b/packages/mocks-counterfact/src/types/components/schemas/ChangePassword.ts new file mode 100644 index 0000000..51888cb --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ChangePassword.ts @@ -0,0 +1 @@ +export type ChangePassword = { password: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterFightDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterFightDataSchema.ts new file mode 100644 index 0000000..95a748a --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterFightDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { FightSchema } from "./FightSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type CharacterFightDataSchema = { + cooldown: CooldownSchema; + fight: FightSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterFightResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterFightResponseSchema.ts new file mode 100644 index 0000000..bf3355e --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterFightResponseSchema.ts @@ -0,0 +1,3 @@ +import type { CharacterFightDataSchema } from "./CharacterFightDataSchema.js"; + +export type CharacterFightResponseSchema = { data: CharacterFightDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterLeaderboardSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterLeaderboardSchema.ts new file mode 100644 index 0000000..79f185b --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterLeaderboardSchema.ts @@ -0,0 +1,22 @@ +export type CharacterLeaderboardSchema = { + name: string; + skin: string; + achievements_points: number; + level: number; + total_xp: number; + mining_level: number; + mining_total_xp: number; + woodcutting_level: number; + woodcutting_total_xp: number; + fishing_level: number; + fishing_total_xp: number; + weaponcrafting_level: number; + weaponcrafting_total_xp: number; + gearcrafting_level: number; + gearcrafting_total_xp: number; + jewelrycrafting_level: number; + jewelrycrafting_total_xp: number; + cooking_level: number; + cooking_total_xp: number; + gold: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementDataSchema.ts new file mode 100644 index 0000000..ed28153 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { MapSchema } from "./MapSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type CharacterMovementDataSchema = { + cooldown: CooldownSchema; + destination: MapSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementResponseSchema.ts new file mode 100644 index 0000000..dbb56f5 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterMovementResponseSchema.ts @@ -0,0 +1,5 @@ +import type { CharacterMovementDataSchema } from "./CharacterMovementDataSchema.js"; + +export type CharacterMovementResponseSchema = { + data: CharacterMovementDataSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterResponseSchema.ts new file mode 100644 index 0000000..b616bb4 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterResponseSchema.ts @@ -0,0 +1,3 @@ +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type CharacterResponseSchema = { data: CharacterSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CharacterSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CharacterSchema.ts new file mode 100644 index 0000000..98e8ee4 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CharacterSchema.ts @@ -0,0 +1,75 @@ +import type { InventorySlot } from "./InventorySlot.js"; + +export type CharacterSchema = { + name: string; + skin: "men1" | "men2" | "men3" | "women1" | "women2" | "women3"; + level: number; + xp: number; + max_xp: number; + achievements_points: number; + gold: number; + speed: number; + mining_level: number; + mining_xp: number; + mining_max_xp: number; + woodcutting_level: number; + woodcutting_xp: number; + woodcutting_max_xp: number; + fishing_level: number; + fishing_xp: number; + fishing_max_xp: number; + weaponcrafting_level: number; + weaponcrafting_xp: number; + weaponcrafting_max_xp: number; + gearcrafting_level: number; + gearcrafting_xp: number; + gearcrafting_max_xp: number; + jewelrycrafting_level: number; + jewelrycrafting_xp: number; + jewelrycrafting_max_xp: number; + cooking_level: number; + cooking_xp: number; + cooking_max_xp: number; + hp: number; + haste: number; + critical_strike: number; + stamina: number; + attack_fire: number; + attack_earth: number; + attack_water: number; + attack_air: number; + dmg_fire: number; + dmg_earth: number; + dmg_water: number; + dmg_air: number; + res_fire: number; + res_earth: number; + res_water: number; + res_air: number; + x: number; + y: number; + cooldown: number; + cooldown_expiration?: string; + weapon_slot: string; + shield_slot: string; + helmet_slot: string; + body_armor_slot: string; + leg_armor_slot: string; + boots_slot: string; + ring1_slot: string; + ring2_slot: string; + amulet_slot: string; + artifact1_slot: string; + artifact2_slot: string; + artifact3_slot: string; + consumable1_slot: string; + consumable1_slot_quantity: number; + consumable2_slot: string; + consumable2_slot_quantity: number; + task: string; + task_type: string; + task_progress: number; + task_total: number; + inventory_max_items: number; + inventory?: Array; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CooldownSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CooldownSchema.ts new file mode 100644 index 0000000..b6b4327 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CooldownSchema.ts @@ -0,0 +1,20 @@ +export type CooldownSchema = { + total_seconds: number; + remaining_seconds: number; + started_at: string; + expiration: string; + reason: + | "movement" + | "fight" + | "crafting" + | "gathering" + | "buy_ge" + | "sell_ge" + | "delete_item" + | "deposit_bank" + | "withdraw_bank" + | "equip" + | "unequip" + | "task" + | "recycling"; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CraftSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CraftSchema.ts new file mode 100644 index 0000000..ca0f2b2 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CraftSchema.ts @@ -0,0 +1,8 @@ +import type { SimpleItemSchema } from "./SimpleItemSchema.js"; + +export type CraftSchema = { + skill?: "weaponcrafting" | "gearcrafting" | "jewelrycrafting" | "cooking" | "woodcutting" | "mining"; + level?: number; + items?: Array; + quantity?: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/CraftingSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/CraftingSchema.ts new file mode 100644 index 0000000..a192811 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/CraftingSchema.ts @@ -0,0 +1 @@ +export type CraftingSchema = { code: string; quantity?: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_AchievementSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_AchievementSchema_.ts new file mode 100644 index 0000000..d37160f --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_AchievementSchema_.ts @@ -0,0 +1,9 @@ +import type { AchievementSchema } from "./AchievementSchema.js"; + +export type DataPage_AchievementSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_ActiveEventSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ActiveEventSchema_.ts new file mode 100644 index 0000000..c7b0470 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ActiveEventSchema_.ts @@ -0,0 +1,9 @@ +import type { ActiveEventSchema } from "./ActiveEventSchema.js"; + +export type DataPage_ActiveEventSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_BaseAchievementSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_BaseAchievementSchema_.ts new file mode 100644 index 0000000..7e8e215 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_BaseAchievementSchema_.ts @@ -0,0 +1,9 @@ +import type { BaseAchievementSchema } from "./BaseAchievementSchema.js"; + +export type DataPage_BaseAchievementSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterLeaderboardSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterLeaderboardSchema_.ts new file mode 100644 index 0000000..a9ebdcd --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterLeaderboardSchema_.ts @@ -0,0 +1,9 @@ +import type { CharacterLeaderboardSchema } from "./CharacterLeaderboardSchema.js"; + +export type DataPage_CharacterLeaderboardSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterSchema_.ts new file mode 100644 index 0000000..10f8a03 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_CharacterSchema_.ts @@ -0,0 +1,9 @@ +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type DataPage_CharacterSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_GEItemSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_GEItemSchema_.ts new file mode 100644 index 0000000..ebd9bef --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_GEItemSchema_.ts @@ -0,0 +1,9 @@ +import type { GEItemSchema } from "./GEItemSchema.js"; + +export type DataPage_GEItemSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_ItemSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ItemSchema_.ts new file mode 100644 index 0000000..de7fd4e --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ItemSchema_.ts @@ -0,0 +1,9 @@ +import type { ItemSchema } from "./ItemSchema.js"; + +export type DataPage_ItemSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_LogSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_LogSchema_.ts new file mode 100644 index 0000000..0ff962d --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_LogSchema_.ts @@ -0,0 +1,9 @@ +import type { LogSchema } from "./LogSchema.js"; + +export type DataPage_LogSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_MapSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_MapSchema_.ts new file mode 100644 index 0000000..63176ba --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_MapSchema_.ts @@ -0,0 +1,9 @@ +import type { MapSchema } from "./MapSchema.js"; + +export type DataPage_MapSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_MonsterSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_MonsterSchema_.ts new file mode 100644 index 0000000..55a6172 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_MonsterSchema_.ts @@ -0,0 +1,9 @@ +import type { MonsterSchema } from "./MonsterSchema.js"; + +export type DataPage_MonsterSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_ResourceSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ResourceSchema_.ts new file mode 100644 index 0000000..038a504 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_ResourceSchema_.ts @@ -0,0 +1,9 @@ +import type { ResourceSchema } from "./ResourceSchema.js"; + +export type DataPage_ResourceSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_SimpleItemSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_SimpleItemSchema_.ts new file mode 100644 index 0000000..2b984d0 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_SimpleItemSchema_.ts @@ -0,0 +1,9 @@ +import type { SimpleItemSchema } from "./SimpleItemSchema.js"; + +export type DataPage_SimpleItemSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_TaskFullSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_TaskFullSchema_.ts new file mode 100644 index 0000000..8a8bfaa --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_TaskFullSchema_.ts @@ -0,0 +1,9 @@ +import type { TaskFullSchema } from "./TaskFullSchema.js"; + +export type DataPage_TaskFullSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DataPage_TasksRewardFullSchema_.ts b/packages/mocks-counterfact/src/types/components/schemas/DataPage_TasksRewardFullSchema_.ts new file mode 100644 index 0000000..026eda9 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DataPage_TasksRewardFullSchema_.ts @@ -0,0 +1,9 @@ +import type { TasksRewardFullSchema } from "./TasksRewardFullSchema.js"; + +export type DataPage_TasksRewardFullSchema_ = { + data: Array; + total: number | null; + page: number | null; + size: number | null; + pages?: number | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DeleteCharacterSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DeleteCharacterSchema.ts new file mode 100644 index 0000000..3fdb0c8 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DeleteCharacterSchema.ts @@ -0,0 +1 @@ +export type DeleteCharacterSchema = { name: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DeleteItemResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DeleteItemResponseSchema.ts new file mode 100644 index 0000000..b019802 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DeleteItemResponseSchema.ts @@ -0,0 +1,3 @@ +import type { DeleteItemSchema } from "./DeleteItemSchema.js"; + +export type DeleteItemResponseSchema = { data: DeleteItemSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DeleteItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DeleteItemSchema.ts new file mode 100644 index 0000000..10004fd --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DeleteItemSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { SimpleItemSchema } from "./SimpleItemSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type DeleteItemSchema = { + cooldown: CooldownSchema; + item: SimpleItemSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DepositWithdrawGoldSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DepositWithdrawGoldSchema.ts new file mode 100644 index 0000000..48350dd --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DepositWithdrawGoldSchema.ts @@ -0,0 +1 @@ +export type DepositWithdrawGoldSchema = { quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DestinationSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DestinationSchema.ts new file mode 100644 index 0000000..c2b8a6b --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DestinationSchema.ts @@ -0,0 +1 @@ +export type DestinationSchema = { x: number; y: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DropRateSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DropRateSchema.ts new file mode 100644 index 0000000..bc495f8 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DropRateSchema.ts @@ -0,0 +1,6 @@ +export type DropRateSchema = { + code: string; + rate: number; + min_quantity: number; + max_quantity: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/DropSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/DropSchema.ts new file mode 100644 index 0000000..d3cefd8 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/DropSchema.ts @@ -0,0 +1 @@ +export type DropSchema = { code: string; quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/EquipRequestSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/EquipRequestSchema.ts new file mode 100644 index 0000000..bc76bce --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/EquipRequestSchema.ts @@ -0,0 +1,24 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { ItemSchema } from "./ItemSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type EquipRequestSchema = { + cooldown: CooldownSchema; + slot: + | "weapon" + | "shield" + | "helmet" + | "body_armor" + | "leg_armor" + | "boots" + | "ring1" + | "ring2" + | "amulet" + | "artifact1" + | "artifact2" + | "artifact3" + | "consumable1" + | "consumable2"; + item: ItemSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/EquipSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/EquipSchema.ts new file mode 100644 index 0000000..720ef0d --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/EquipSchema.ts @@ -0,0 +1,19 @@ +export type EquipSchema = { + code: string; + slot: + | "weapon" + | "shield" + | "helmet" + | "body_armor" + | "leg_armor" + | "boots" + | "ring1" + | "ring2" + | "amulet" + | "artifact1" + | "artifact2" + | "artifact3" + | "consumable1" + | "consumable2"; + quantity?: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/EquipmentResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/EquipmentResponseSchema.ts new file mode 100644 index 0000000..aaacd1f --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/EquipmentResponseSchema.ts @@ -0,0 +1,3 @@ +import type { EquipRequestSchema } from "./EquipRequestSchema.js"; + +export type EquipmentResponseSchema = { data: EquipRequestSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/FightSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/FightSchema.ts new file mode 100644 index 0000000..260c293 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/FightSchema.ts @@ -0,0 +1,13 @@ +import type { DropSchema } from "./DropSchema.js"; +import type { BlockedHitsSchema } from "./BlockedHitsSchema.js"; + +export type FightSchema = { + xp: number; + gold: number; + drops: Array; + turns: number; + monster_blocked_hits: BlockedHitsSchema; + player_blocked_hits: BlockedHitsSchema; + logs: Array; + result: "win" | "lose"; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GEItemResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GEItemResponseSchema.ts new file mode 100644 index 0000000..6957bc1 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GEItemResponseSchema.ts @@ -0,0 +1,3 @@ +import type { GEItemSchema } from "./GEItemSchema.js"; + +export type GEItemResponseSchema = { data: GEItemSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GEItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GEItemSchema.ts new file mode 100644 index 0000000..34ac84b --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GEItemSchema.ts @@ -0,0 +1,7 @@ +export type GEItemSchema = { + code: string; + stock: number; + sell_price?: number; + buy_price?: number; + max_quantity: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GETransactionItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GETransactionItemSchema.ts new file mode 100644 index 0000000..dab957d --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GETransactionItemSchema.ts @@ -0,0 +1,5 @@ +export type GETransactionItemSchema = { + code: string; + quantity: number; + price: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GETransactionListSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GETransactionListSchema.ts new file mode 100644 index 0000000..96024e2 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GETransactionListSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { GETransactionSchema } from "./GETransactionSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type GETransactionListSchema = { + cooldown: CooldownSchema; + transaction: GETransactionSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GETransactionResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GETransactionResponseSchema.ts new file mode 100644 index 0000000..822a1ef --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GETransactionResponseSchema.ts @@ -0,0 +1,3 @@ +import type { GETransactionListSchema } from "./GETransactionListSchema.js"; + +export type GETransactionResponseSchema = { data: GETransactionListSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GETransactionSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GETransactionSchema.ts new file mode 100644 index 0000000..3df8854 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GETransactionSchema.ts @@ -0,0 +1,6 @@ +export type GETransactionSchema = { + code: string; + quantity: number; + price: number; + total_price: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/GoldSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/GoldSchema.ts new file mode 100644 index 0000000..034cbeb --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/GoldSchema.ts @@ -0,0 +1 @@ +export type GoldSchema = { quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/InventorySlot.ts b/packages/mocks-counterfact/src/types/components/schemas/InventorySlot.ts new file mode 100644 index 0000000..404fb8c --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/InventorySlot.ts @@ -0,0 +1 @@ +export type InventorySlot = { slot: number; code: string; quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ItemEffectSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ItemEffectSchema.ts new file mode 100644 index 0000000..1d0cd2f --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ItemEffectSchema.ts @@ -0,0 +1 @@ +export type ItemEffectSchema = { name: string; value: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ItemResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ItemResponseSchema.ts new file mode 100644 index 0000000..fe7bd1b --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ItemResponseSchema.ts @@ -0,0 +1,3 @@ +import type { SingleItemSchema } from "./SingleItemSchema.js"; + +export type ItemResponseSchema = { data: SingleItemSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ItemSchema.ts new file mode 100644 index 0000000..841d2b4 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ItemSchema.ts @@ -0,0 +1,13 @@ +import type { ItemEffectSchema } from "./ItemEffectSchema.js"; +import type { CraftSchema } from "./CraftSchema.js"; + +export type ItemSchema = { + name: string; + code: string; + level: number; + type: string; + subtype: string; + description: string; + effects?: Array; + craft?: CraftSchema | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/LogSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/LogSchema.ts new file mode 100644 index 0000000..265407c --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/LogSchema.ts @@ -0,0 +1,10 @@ +export type LogSchema = { + character: string; + account: string; + type: string; + description: string; + content: unknown; + cooldown: number; + cooldown_expiration: string | null; + created_at: string; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MapContentSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MapContentSchema.ts new file mode 100644 index 0000000..e45e88f --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MapContentSchema.ts @@ -0,0 +1 @@ +export type MapContentSchema = { type: string; code: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MapResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MapResponseSchema.ts new file mode 100644 index 0000000..0b88a4d --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MapResponseSchema.ts @@ -0,0 +1,3 @@ +import type { MapSchema } from "./MapSchema.js"; + +export type MapResponseSchema = { data: MapSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MapSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MapSchema.ts new file mode 100644 index 0000000..2700007 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MapSchema.ts @@ -0,0 +1,9 @@ +import type { MapContentSchema } from "./MapContentSchema.js"; + +export type MapSchema = { + name: string; + skin: string; + x: number; + y: number; + content: MapContentSchema | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MonsterResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MonsterResponseSchema.ts new file mode 100644 index 0000000..1131694 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MonsterResponseSchema.ts @@ -0,0 +1,3 @@ +import type { MonsterSchema } from "./MonsterSchema.js"; + +export type MonsterResponseSchema = { data: MonsterSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MonsterSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MonsterSchema.ts new file mode 100644 index 0000000..ac6e007 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MonsterSchema.ts @@ -0,0 +1,19 @@ +import type { DropRateSchema } from "./DropRateSchema.js"; + +export type MonsterSchema = { + name: string; + code: string; + level: number; + hp: number; + attack_fire: number; + attack_earth: number; + attack_water: number; + attack_air: number; + res_fire: number; + res_earth: number; + res_water: number; + res_air: number; + min_gold: number; + max_gold: number; + drops: Array; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/MyCharactersListSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/MyCharactersListSchema.ts new file mode 100644 index 0000000..443ec26 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/MyCharactersListSchema.ts @@ -0,0 +1,3 @@ +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type MyCharactersListSchema = { data: Array }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/RecyclingDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/RecyclingDataSchema.ts new file mode 100644 index 0000000..5b0f55c --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/RecyclingDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { RecyclingItemsSchema } from "./RecyclingItemsSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type RecyclingDataSchema = { + cooldown: CooldownSchema; + details: RecyclingItemsSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/RecyclingItemsSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/RecyclingItemsSchema.ts new file mode 100644 index 0000000..2e466bd --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/RecyclingItemsSchema.ts @@ -0,0 +1,3 @@ +import type { DropSchema } from "./DropSchema.js"; + +export type RecyclingItemsSchema = { items: Array }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/RecyclingResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/RecyclingResponseSchema.ts new file mode 100644 index 0000000..a51a945 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/RecyclingResponseSchema.ts @@ -0,0 +1,3 @@ +import type { RecyclingDataSchema } from "./RecyclingDataSchema.js"; + +export type RecyclingResponseSchema = { data: RecyclingDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/RecyclingSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/RecyclingSchema.ts new file mode 100644 index 0000000..ae42d43 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/RecyclingSchema.ts @@ -0,0 +1 @@ +export type RecyclingSchema = { code: string; quantity?: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ResourceResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ResourceResponseSchema.ts new file mode 100644 index 0000000..3d631a1 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ResourceResponseSchema.ts @@ -0,0 +1,3 @@ +import type { ResourceSchema } from "./ResourceSchema.js"; + +export type ResourceResponseSchema = { data: ResourceSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ResourceSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ResourceSchema.ts new file mode 100644 index 0000000..567e661 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ResourceSchema.ts @@ -0,0 +1,9 @@ +import type { DropRateSchema } from "./DropRateSchema.js"; + +export type ResourceSchema = { + name: string; + code: string; + skill: "mining" | "woodcutting" | "fishing"; + level: number; + drops: Array; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/ResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/ResponseSchema.ts new file mode 100644 index 0000000..462eb7e --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/ResponseSchema.ts @@ -0,0 +1 @@ +export type ResponseSchema = { message: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/SimpleItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/SimpleItemSchema.ts new file mode 100644 index 0000000..5488fbf --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/SimpleItemSchema.ts @@ -0,0 +1 @@ +export type SimpleItemSchema = { code: string; quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/SingleItemSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/SingleItemSchema.ts new file mode 100644 index 0000000..a7635ef --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/SingleItemSchema.ts @@ -0,0 +1,4 @@ +import type { ItemSchema } from "./ItemSchema.js"; +import type { GEItemSchema } from "./GEItemSchema.js"; + +export type SingleItemSchema = { item: ItemSchema; ge?: GEItemSchema | null }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/SkillDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/SkillDataSchema.ts new file mode 100644 index 0000000..b5001f2 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/SkillDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { SkillInfoSchema } from "./SkillInfoSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type SkillDataSchema = { + cooldown: CooldownSchema; + details: SkillInfoSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/SkillInfoSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/SkillInfoSchema.ts new file mode 100644 index 0000000..b8f7092 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/SkillInfoSchema.ts @@ -0,0 +1,3 @@ +import type { DropSchema } from "./DropSchema.js"; + +export type SkillInfoSchema = { xp: number; items: Array }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/SkillResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/SkillResponseSchema.ts new file mode 100644 index 0000000..bec65fd --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/SkillResponseSchema.ts @@ -0,0 +1,3 @@ +import type { SkillDataSchema } from "./SkillDataSchema.js"; + +export type SkillResponseSchema = { data: SkillDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/StatusResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/StatusResponseSchema.ts new file mode 100644 index 0000000..20f1aa6 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/StatusResponseSchema.ts @@ -0,0 +1,3 @@ +import type { StatusSchema } from "./StatusSchema.js"; + +export type StatusResponseSchema = { data: StatusSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/StatusSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/StatusSchema.ts new file mode 100644 index 0000000..8491e27 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/StatusSchema.ts @@ -0,0 +1,12 @@ +import type { AnnouncementSchema } from "./AnnouncementSchema.js"; + +export type StatusSchema = { + status: string; + version?: string; + max_level: number; + characters_online: number; + server_time: string; + announcements: Array; + last_wipe: string; + next_wipe: string; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledResponseSchema.ts new file mode 100644 index 0000000..593c704 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TaskCancelledSchema } from "./TaskCancelledSchema.js"; + +export type TaskCancelledResponseSchema = { data: TaskCancelledSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledSchema.ts new file mode 100644 index 0000000..a1e1036 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskCancelledSchema.ts @@ -0,0 +1,7 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type TaskCancelledSchema = { + cooldown: CooldownSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskDataSchema.ts new file mode 100644 index 0000000..8b19494 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { TaskSchema } from "./TaskSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type TaskDataSchema = { + cooldown: CooldownSchema; + task: TaskSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskFullResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskFullResponseSchema.ts new file mode 100644 index 0000000..f17edc1 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskFullResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TaskFullSchema } from "./TaskFullSchema.js"; + +export type TaskFullResponseSchema = { data: TaskFullSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskFullSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskFullSchema.ts new file mode 100644 index 0000000..cf1bd81 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskFullSchema.ts @@ -0,0 +1,8 @@ +export type TaskFullSchema = { + code: string; + level: number; + type: "monsters" | "items"; + min_quantity: number; + max_quantity: number; + skill: string | null; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskResponseSchema.ts new file mode 100644 index 0000000..7ef398e --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TaskDataSchema } from "./TaskDataSchema.js"; + +export type TaskResponseSchema = { data: TaskDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskSchema.ts new file mode 100644 index 0000000..407544c --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskSchema.ts @@ -0,0 +1,5 @@ +export type TaskSchema = { + code: string; + type: "monsters" | "items"; + total: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskTradeDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeDataSchema.ts new file mode 100644 index 0000000..d5073ca --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { TaskTradeSchema } from "./TaskTradeSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type TaskTradeDataSchema = { + cooldown: CooldownSchema; + trade: TaskTradeSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskTradeResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeResponseSchema.ts new file mode 100644 index 0000000..44b4d0e --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TaskTradeDataSchema } from "./TaskTradeDataSchema.js"; + +export type TaskTradeResponseSchema = { data: TaskTradeDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TaskTradeSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeSchema.ts new file mode 100644 index 0000000..88b8bf7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TaskTradeSchema.ts @@ -0,0 +1 @@ +export type TaskTradeSchema = { code: string; quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TasksRewardDataSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardDataSchema.ts new file mode 100644 index 0000000..aa26411 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardDataSchema.ts @@ -0,0 +1,9 @@ +import type { CooldownSchema } from "./CooldownSchema.js"; +import type { TasksRewardSchema } from "./TasksRewardSchema.js"; +import type { CharacterSchema } from "./CharacterSchema.js"; + +export type TasksRewardDataSchema = { + cooldown: CooldownSchema; + reward: TasksRewardSchema; + character: CharacterSchema; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullResponseSchema.ts new file mode 100644 index 0000000..3c07816 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TasksRewardFullSchema } from "./TasksRewardFullSchema.js"; + +export type TasksRewardFullResponseSchema = { data: TasksRewardFullSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullSchema.ts new file mode 100644 index 0000000..8556ea7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardFullSchema.ts @@ -0,0 +1,6 @@ +export type TasksRewardFullSchema = { + code: string; + min_quantity: number; + max_quantity: number; + odds: number; +}; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TasksRewardResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardResponseSchema.ts new file mode 100644 index 0000000..f68aec3 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardResponseSchema.ts @@ -0,0 +1,3 @@ +import type { TasksRewardDataSchema } from "./TasksRewardDataSchema.js"; + +export type TasksRewardResponseSchema = { data: TasksRewardDataSchema }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TasksRewardSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardSchema.ts new file mode 100644 index 0000000..ca248cb --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TasksRewardSchema.ts @@ -0,0 +1 @@ +export type TasksRewardSchema = { code: string; quantity: number }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/TokenResponseSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/TokenResponseSchema.ts new file mode 100644 index 0000000..2be9be3 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/TokenResponseSchema.ts @@ -0,0 +1 @@ +export type TokenResponseSchema = { token: string }; diff --git a/packages/mocks-counterfact/src/types/components/schemas/UnequipSchema.ts b/packages/mocks-counterfact/src/types/components/schemas/UnequipSchema.ts new file mode 100644 index 0000000..4806050 --- /dev/null +++ b/packages/mocks-counterfact/src/types/components/schemas/UnequipSchema.ts @@ -0,0 +1,18 @@ +export type UnequipSchema = { + slot: + | "weapon" + | "shield" + | "helmet" + | "body_armor" + | "leg_armor" + | "boots" + | "ring1" + | "ring2" + | "amulet" + | "artifact1" + | "artifact2" + | "artifact3" + | "consumable1" + | "consumable2"; + quantity?: number; +}; diff --git a/packages/mocks-counterfact/src/types/paths/accounts/create.types.ts b/packages/mocks-counterfact/src/types/paths/accounts/create.types.ts new file mode 100644 index 0000000..d632c99 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/accounts/create.types.ts @@ -0,0 +1,59 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { AddAccountSchema } from "../../components/schemas/AddAccountSchema.js"; +import type { ResponseSchema } from "../../components/schemas/ResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: AddAccountSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: ResponseSchema; + }; + }; + }; + 456: { + headers: never; + requiredHeaders: never; + content: never; + }; + 457: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: ResponseSchema; + } + | { + status: 456; + } + | { + status: 457; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/achievements.types.ts b/packages/mocks-counterfact/src/types/paths/achievements.types.ts new file mode 100644 index 0000000..b1d4285 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/achievements.types.ts @@ -0,0 +1,46 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_BaseAchievementSchema_ } from "../components/schemas/DataPage_BaseAchievementSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + type?: "combat_kill" | "combat_drop" | "combat_level" | "gathering" | "crafting" | "recycling" | "task" | "other"; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_BaseAchievementSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_BaseAchievementSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/achievements/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/achievements/{code}.types.ts new file mode 100644 index 0000000..44d0a94 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/achievements/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { BaseachievementResponseSchema } from "../../components/schemas/BaseachievementResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BaseachievementResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BaseachievementResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/characters.types.ts b/packages/mocks-counterfact/src/types/paths/characters.types.ts new file mode 100644 index 0000000..2019971 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/characters.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_CharacterSchema_ } from "../components/schemas/DataPage_CharacterSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_CharacterSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_CharacterSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/characters/create.types.ts b/packages/mocks-counterfact/src/types/paths/characters/create.types.ts new file mode 100644 index 0000000..c9d7466 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/characters/create.types.ts @@ -0,0 +1,59 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { AddCharacterSchema } from "../../components/schemas/AddCharacterSchema.js"; +import type { CharacterResponseSchema } from "../../components/schemas/CharacterResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: AddCharacterSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: CharacterResponseSchema; + }; + }; + }; + 494: { + headers: never; + requiredHeaders: never; + content: never; + }; + 495: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: CharacterResponseSchema; + } + | { + status: 494; + } + | { + status: 495; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/characters/delete.types.ts b/packages/mocks-counterfact/src/types/paths/characters/delete.types.ts new file mode 100644 index 0000000..724e12b --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/characters/delete.types.ts @@ -0,0 +1,51 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { DeleteCharacterSchema } from "../../components/schemas/DeleteCharacterSchema.js"; +import type { CharacterResponseSchema } from "../../components/schemas/CharacterResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: DeleteCharacterSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: CharacterResponseSchema; + }; + }; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: CharacterResponseSchema; + } + | { + status: 498; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/characters/{name}.types.ts b/packages/mocks-counterfact/src/types/paths/characters/{name}.types.ts new file mode 100644 index 0000000..7a45759 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/characters/{name}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { CharacterResponseSchema } from "../../components/schemas/CharacterResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: CharacterResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: CharacterResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/characters/{name}/achievements.types.ts b/packages/mocks-counterfact/src/types/paths/characters/{name}/achievements.types.ts new file mode 100644 index 0000000..838e614 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/characters/{name}/achievements.types.ts @@ -0,0 +1,63 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../types.ts"; +import type { Context } from "../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../types.ts"; +import type { DataPage_AchievementSchema_ } from "../../../components/schemas/DataPage_AchievementSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + type?: string; + completed?: + | "combat_kill" + | "combat_drop" + | "combat_level" + | "gathering" + | "crafting" + | "recycling" + | "task" + | "other"; + page?: boolean; + size?: number; + }; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_AchievementSchema_; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_AchievementSchema_; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/events.types.ts b/packages/mocks-counterfact/src/types/paths/events.types.ts new file mode 100644 index 0000000..a48be24 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/events.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_ActiveEventSchema_ } from "../components/schemas/DataPage_ActiveEventSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_ActiveEventSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_ActiveEventSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/ge.types.ts b/packages/mocks-counterfact/src/types/paths/ge.types.ts new file mode 100644 index 0000000..533a968 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/ge.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_GEItemSchema_ } from "../components/schemas/DataPage_GEItemSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_GEItemSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_GEItemSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/ge/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/ge/{code}.types.ts new file mode 100644 index 0000000..87869b4 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/ge/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { GEItemResponseSchema } from "../../components/schemas/GEItemResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: GEItemResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: GEItemResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/index.types.ts b/packages/mocks-counterfact/src/types/paths/index.types.ts new file mode 100644 index 0000000..f796de7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/index.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { StatusResponseSchema } from "../components/schemas/StatusResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: StatusResponseSchema; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: StatusResponseSchema; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/items.types.ts b/packages/mocks-counterfact/src/types/paths/items.types.ts new file mode 100644 index 0000000..e74893e --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/items.types.ts @@ -0,0 +1,63 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_ItemSchema_ } from "../components/schemas/DataPage_ItemSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + min_level?: number; + max_level?: number; + name?: string; + type?: + | "consumable" + | "body_armor" + | "weapon" + | "resource" + | "leg_armor" + | "helmet" + | "boots" + | "shield" + | "amulet" + | "ring" + | "artifact" + | "currency"; + craft_skill?: "weaponcrafting" | "gearcrafting" | "jewelrycrafting" | "cooking" | "woodcutting" | "mining"; + craft_material?: string; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_ItemSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_ItemSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/items/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/items/{code}.types.ts new file mode 100644 index 0000000..2fa403a --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/items/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { ItemResponseSchema } from "../../components/schemas/ItemResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: ItemResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: ItemResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/leaderboard.types.ts b/packages/mocks-counterfact/src/types/paths/leaderboard.types.ts new file mode 100644 index 0000000..6e3a0f0 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/leaderboard.types.ts @@ -0,0 +1,56 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_CharacterLeaderboardSchema_ } from "../components/schemas/DataPage_CharacterLeaderboardSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + sort?: + | "combat" + | "woodcutting" + | "mining" + | "fishing" + | "weaponcrafting" + | "gearcrafting" + | "jewelrycrafting" + | "cooking" + | "achievements_points" + | "gold"; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_CharacterLeaderboardSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_CharacterLeaderboardSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/maps.types.ts b/packages/mocks-counterfact/src/types/paths/maps.types.ts new file mode 100644 index 0000000..8055d73 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/maps.types.ts @@ -0,0 +1,47 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_MapSchema_ } from "../components/schemas/DataPage_MapSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + content_type?: "monster" | "resource" | "workshop" | "bank" | "grand_exchange" | "tasks_master"; + content_code?: string; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_MapSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_MapSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/maps/{x}/{y}.types.ts b/packages/mocks-counterfact/src/types/paths/maps/{x}/{y}.types.ts new file mode 100644 index 0000000..16c6b1d --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/maps/{x}/{y}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../types.ts"; +import type { Context } from "../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../types.ts"; +import type { MapResponseSchema } from "../../../components/schemas/MapResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { x: number; y: number }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: MapResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: MapResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/monsters.types.ts b/packages/mocks-counterfact/src/types/paths/monsters.types.ts new file mode 100644 index 0000000..c1e5382 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/monsters.types.ts @@ -0,0 +1,48 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_MonsterSchema_ } from "../components/schemas/DataPage_MonsterSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + min_level?: number; + max_level?: number; + drop?: string; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_MonsterSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_MonsterSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/monsters/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/monsters/{code}.types.ts new file mode 100644 index 0000000..9a0ee54 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/monsters/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { MonsterResponseSchema } from "../../components/schemas/MonsterResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: MonsterResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: MonsterResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/bank.types.ts b/packages/mocks-counterfact/src/types/paths/my/bank.types.ts new file mode 100644 index 0000000..a2ae027 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/bank.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { BankResponseSchema } from "../../components/schemas/BankResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankResponseSchema; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankResponseSchema; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/bank/items.types.ts b/packages/mocks-counterfact/src/types/paths/my/bank/items.types.ts new file mode 100644 index 0000000..a4ee776 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/bank/items.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../types.ts"; +import type { Context } from "../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../types.ts"; +import type { DataPage_SimpleItemSchema_ } from "../../../components/schemas/DataPage_SimpleItemSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { item_code?: string; page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_SimpleItemSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_SimpleItemSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/change_password.types.ts b/packages/mocks-counterfact/src/types/paths/my/change_password.types.ts new file mode 100644 index 0000000..64c2eba --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/change_password.types.ts @@ -0,0 +1,51 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { ChangePassword } from "../../components/schemas/ChangePassword.js"; +import type { ResponseSchema } from "../../components/schemas/ResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: ChangePassword; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: ResponseSchema; + }; + }; + }; + 458: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: ResponseSchema; + } + | { + status: 458; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/characters.types.ts b/packages/mocks-counterfact/src/types/paths/my/characters.types.ts new file mode 100644 index 0000000..0aa01e8 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/characters.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { MyCharactersListSchema } from "../../components/schemas/MyCharactersListSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: MyCharactersListSchema; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: MyCharactersListSchema; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/logs.types.ts b/packages/mocks-counterfact/src/types/paths/my/logs.types.ts new file mode 100644 index 0000000..c1101b7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/logs.types.ts @@ -0,0 +1,58 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { DataPage_LogSchema_ } from "../../components/schemas/DataPage_LogSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_LogSchema_; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_LogSchema_; + } + | { + status: 404; + } + | { + status: 498; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/buy_expansion.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/buy_expansion.types.ts new file mode 100644 index 0000000..4208013 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/buy_expansion.types.ts @@ -0,0 +1,82 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { BankExtensionTransactionResponseSchema } from "../../../../../components/schemas/BankExtensionTransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankExtensionTransactionResponseSchema; + }; + }; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 492: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankExtensionTransactionResponseSchema; + } + | { + status: 486; + } + | { + status: 492; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit.types.ts new file mode 100644 index 0000000..44125dd --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit.types.ts @@ -0,0 +1,107 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { SimpleItemSchema } from "../../../../../components/schemas/SimpleItemSchema.js"; +import type { BankItemTransactionResponseSchema } from "../../../../../components/schemas/BankItemTransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: SimpleItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankItemTransactionResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 461: { + headers: never; + requiredHeaders: never; + content: never; + }; + 462: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankItemTransactionResponseSchema; + } + | { + status: 404; + } + | { + status: 461; + } + | { + status: 462; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit/gold.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit/gold.types.ts new file mode 100644 index 0000000..db28eba --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/deposit/gold.types.ts @@ -0,0 +1,91 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../../types.ts"; +import type { Context } from "../../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../../types.ts"; +import type { DepositWithdrawGoldSchema } from "../../../../../../components/schemas/DepositWithdrawGoldSchema.js"; +import type { BankGoldTransactionResponseSchema } from "../../../../../../components/schemas/BankGoldTransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: DepositWithdrawGoldSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankGoldTransactionResponseSchema; + }; + }; + }; + 461: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 492: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankGoldTransactionResponseSchema; + } + | { + status: 461; + } + | { + status: 486; + } + | { + status: 492; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw.types.ts new file mode 100644 index 0000000..bf1f6c7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw.types.ts @@ -0,0 +1,107 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { SimpleItemSchema } from "../../../../../components/schemas/SimpleItemSchema.js"; +import type { BankItemTransactionResponseSchema } from "../../../../../components/schemas/BankItemTransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: SimpleItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankItemTransactionResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 461: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankItemTransactionResponseSchema; + } + | { + status: 404; + } + | { + status: 461; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw/gold.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw/gold.types.ts new file mode 100644 index 0000000..cae0ec2 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/bank/withdraw/gold.types.ts @@ -0,0 +1,91 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../../types.ts"; +import type { Context } from "../../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../../types.ts"; +import type { DepositWithdrawGoldSchema } from "../../../../../../components/schemas/DepositWithdrawGoldSchema.js"; +import type { BankGoldTransactionResponseSchema } from "../../../../../../components/schemas/BankGoldTransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: DepositWithdrawGoldSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: BankGoldTransactionResponseSchema; + }; + }; + }; + 460: { + headers: never; + requiredHeaders: never; + content: never; + }; + 461: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: BankGoldTransactionResponseSchema; + } + | { + status: 460; + } + | { + status: 461; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/crafting.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/crafting.types.ts new file mode 100644 index 0000000..669854a --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/crafting.types.ts @@ -0,0 +1,107 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { CraftingSchema } from "../../../../components/schemas/CraftingSchema.js"; +import type { SkillResponseSchema } from "../../../../components/schemas/SkillResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: CraftingSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: SkillResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 493: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: SkillResponseSchema; + } + | { + status: 404; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 493; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/delete.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/delete.types.ts new file mode 100644 index 0000000..96bab69 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/delete.types.ts @@ -0,0 +1,75 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { SimpleItemSchema } from "../../../../components/schemas/SimpleItemSchema.js"; +import type { DeleteItemResponseSchema } from "../../../../components/schemas/DeleteItemResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: SimpleItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DeleteItemResponseSchema; + }; + }; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DeleteItemResponseSchema; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/equip.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/equip.types.ts new file mode 100644 index 0000000..171191f --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/equip.types.ts @@ -0,0 +1,123 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { EquipSchema } from "../../../../components/schemas/EquipSchema.js"; +import type { EquipmentResponseSchema } from "../../../../components/schemas/EquipmentResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: EquipSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: EquipmentResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 484: { + headers: never; + requiredHeaders: never; + content: never; + }; + 485: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 491: { + headers: never; + requiredHeaders: never; + content: never; + }; + 496: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: EquipmentResponseSchema; + } + | { + status: 404; + } + | { + status: 478; + } + | { + status: 484; + } + | { + status: 485; + } + | { + status: 486; + } + | { + status: 491; + } + | { + status: 496; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/fight.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/fight.types.ts new file mode 100644 index 0000000..9c8264c --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/fight.types.ts @@ -0,0 +1,82 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { CharacterFightResponseSchema } from "../../../../components/schemas/CharacterFightResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: CharacterFightResponseSchema; + }; + }; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: CharacterFightResponseSchema; + } + | { + status: 486; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/gathering.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/gathering.types.ts new file mode 100644 index 0000000..313e3f1 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/gathering.types.ts @@ -0,0 +1,90 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { SkillResponseSchema } from "../../../../components/schemas/SkillResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: SkillResponseSchema; + }; + }; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 493: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: SkillResponseSchema; + } + | { + status: 486; + } + | { + status: 493; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/buy.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/buy.types.ts new file mode 100644 index 0000000..8fd7593 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/buy.types.ts @@ -0,0 +1,123 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { GETransactionItemSchema } from "../../../../../components/schemas/GETransactionItemSchema.js"; +import type { GETransactionResponseSchema } from "../../../../../components/schemas/GETransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: GETransactionItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: GETransactionResponseSchema; + }; + }; + }; + 479: { + headers: never; + requiredHeaders: never; + content: never; + }; + 480: { + headers: never; + requiredHeaders: never; + content: never; + }; + 482: { + headers: never; + requiredHeaders: never; + content: never; + }; + 483: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 492: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: GETransactionResponseSchema; + } + | { + status: 479; + } + | { + status: 480; + } + | { + status: 482; + } + | { + status: 483; + } + | { + status: 486; + } + | { + status: 492; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/sell.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/sell.types.ts new file mode 100644 index 0000000..50b69d2 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/ge/sell.types.ts @@ -0,0 +1,115 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { GETransactionItemSchema } from "../../../../../components/schemas/GETransactionItemSchema.js"; +import type { GETransactionResponseSchema } from "../../../../../components/schemas/GETransactionResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: GETransactionItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: GETransactionResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 479: { + headers: never; + requiredHeaders: never; + content: never; + }; + 482: { + headers: never; + requiredHeaders: never; + content: never; + }; + 483: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: GETransactionResponseSchema; + } + | { + status: 404; + } + | { + status: 478; + } + | { + status: 479; + } + | { + status: 482; + } + | { + status: 483; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/move.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/move.types.ts new file mode 100644 index 0000000..5c02ff0 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/move.types.ts @@ -0,0 +1,83 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { DestinationSchema } from "../../../../components/schemas/DestinationSchema.js"; +import type { CharacterMovementResponseSchema } from "../../../../components/schemas/CharacterMovementResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: DestinationSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: CharacterMovementResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 490: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: CharacterMovementResponseSchema; + } + | { + status: 404; + } + | { + status: 486; + } + | { + status: 490; + } + | { + status: 498; + } + | { + status: 499; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/recycling.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/recycling.types.ts new file mode 100644 index 0000000..98796a7 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/recycling.types.ts @@ -0,0 +1,115 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { RecyclingSchema } from "../../../../components/schemas/RecyclingSchema.js"; +import type { RecyclingResponseSchema } from "../../../../components/schemas/RecyclingResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: RecyclingSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: RecyclingResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 473: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 493: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: RecyclingResponseSchema; + } + | { + status: 404; + } + | { + status: 473; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 493; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/cancel.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/cancel.types.ts new file mode 100644 index 0000000..68de5ee --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/cancel.types.ts @@ -0,0 +1,82 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { TaskCancelledResponseSchema } from "../../../../../components/schemas/TaskCancelledResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TaskCancelledResponseSchema; + }; + }; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TaskCancelledResponseSchema; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/complete.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/complete.types.ts new file mode 100644 index 0000000..639a8c3 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/complete.types.ts @@ -0,0 +1,98 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { TasksRewardResponseSchema } from "../../../../../components/schemas/TasksRewardResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TasksRewardResponseSchema; + }; + }; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 487: { + headers: never; + requiredHeaders: never; + content: never; + }; + 488: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TasksRewardResponseSchema; + } + | { + status: 486; + } + | { + status: 487; + } + | { + status: 488; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/exchange.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/exchange.types.ts new file mode 100644 index 0000000..10514e0 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/exchange.types.ts @@ -0,0 +1,90 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { TasksRewardResponseSchema } from "../../../../../components/schemas/TasksRewardResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TasksRewardResponseSchema; + }; + }; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TasksRewardResponseSchema; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/new.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/new.types.ts new file mode 100644 index 0000000..d754e2d --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/new.types.ts @@ -0,0 +1,82 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { TaskResponseSchema } from "../../../../../components/schemas/TaskResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TaskResponseSchema; + }; + }; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 489: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TaskResponseSchema; + } + | { + status: 486; + } + | { + status: 489; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/trade.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/trade.types.ts new file mode 100644 index 0000000..c7cbc9a --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/task/trade.types.ts @@ -0,0 +1,99 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../../types.ts"; +import type { Context } from "../../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../../types.ts"; +import type { SimpleItemSchema } from "../../../../../components/schemas/SimpleItemSchema.js"; +import type { TaskTradeResponseSchema } from "../../../../../components/schemas/TaskTradeResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: SimpleItemSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TaskTradeResponseSchema; + }; + }; + }; + 474: { + headers: never; + requiredHeaders: never; + content: never; + }; + 475: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + 598: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TaskTradeResponseSchema; + } + | { + status: 474; + } + | { + status: 475; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 498; + } + | { + status: 499; + } + | { + status: 598; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/my/{name}/action/unequip.types.ts b/packages/mocks-counterfact/src/types/paths/my/{name}/action/unequip.types.ts new file mode 100644 index 0000000..5113101 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/my/{name}/action/unequip.types.ts @@ -0,0 +1,99 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../../types.ts"; +import type { Context } from "../../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../../types.ts"; +import type { UnequipSchema } from "../../../../components/schemas/UnequipSchema.js"; +import type { EquipmentResponseSchema } from "../../../../components/schemas/EquipmentResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: { name: string }; + header: never; + body: UnequipSchema; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: EquipmentResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + 478: { + headers: never; + requiredHeaders: never; + content: never; + }; + 486: { + headers: never; + requiredHeaders: never; + content: never; + }; + 491: { + headers: never; + requiredHeaders: never; + content: never; + }; + 497: { + headers: never; + requiredHeaders: never; + content: never; + }; + 498: { + headers: never; + requiredHeaders: never; + content: never; + }; + 499: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: EquipmentResponseSchema; + } + | { + status: 404; + } + | { + status: 478; + } + | { + status: 486; + } + | { + status: 491; + } + | { + status: 497; + } + | { + status: 498; + } + | { + status: 499; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/resources.types.ts b/packages/mocks-counterfact/src/types/paths/resources.types.ts new file mode 100644 index 0000000..b358e32 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/resources.types.ts @@ -0,0 +1,49 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { DataPage_ResourceSchema_ } from "../components/schemas/DataPage_ResourceSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + min_level?: number; + max_level?: number; + skill?: "mining" | "woodcutting" | "fishing"; + drop?: string; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_ResourceSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_ResourceSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/resources/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/resources/{code}.types.ts new file mode 100644 index 0000000..12d0506 --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/resources/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { ResourceResponseSchema } from "../../components/schemas/ResourceResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: ResourceResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: ResourceResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/tasks/list.types.ts b/packages/mocks-counterfact/src/types/paths/tasks/list.types.ts new file mode 100644 index 0000000..78a9fdb --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/tasks/list.types.ts @@ -0,0 +1,49 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { DataPage_TaskFullSchema_ } from "../../components/schemas/DataPage_TaskFullSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { + min_level?: number; + max_level?: number; + skill?: "mining" | "woodcutting" | "fishing" | "gearcrafting" | "weaponcrafting" | "jewelrycrafting" | "cooking"; + type?: "items" | "monsters"; + page?: number; + size?: number; + }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_TaskFullSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_TaskFullSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/tasks/list/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/tasks/list/{code}.types.ts new file mode 100644 index 0000000..108586c --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/tasks/list/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../types.ts"; +import type { Context } from "../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../types.ts"; +import type { TaskFullResponseSchema } from "../../../components/schemas/TaskFullResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TaskFullResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TaskFullResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/tasks/rewards.types.ts b/packages/mocks-counterfact/src/types/paths/tasks/rewards.types.ts new file mode 100644 index 0000000..5b129da --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/tasks/rewards.types.ts @@ -0,0 +1,42 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../types.ts"; +import type { OmitValueWhenNever } from "../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../types.ts"; +import type { Context } from "../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../types.ts"; +import type { DataPage_TasksRewardFullSchema_ } from "../../components/schemas/DataPage_TasksRewardFullSchema_.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: { page?: number; size?: number }; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: DataPage_TasksRewardFullSchema_; + }; + }; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: DataPage_TasksRewardFullSchema_; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/tasks/rewards/{code}.types.ts b/packages/mocks-counterfact/src/types/paths/tasks/rewards/{code}.types.ts new file mode 100644 index 0000000..176a25f --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/tasks/rewards/{code}.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../../../types.ts"; +import type { OmitValueWhenNever } from "../../../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../../../types.ts"; +import type { Context } from "../../../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../../../types.ts"; +import type { TasksRewardFullResponseSchema } from "../../../components/schemas/TasksRewardFullResponseSchema.js"; + +export type HTTP_GET = ( + $: OmitValueWhenNever<{ + query: never; + path: { code: string }; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TasksRewardFullResponseSchema; + }; + }; + }; + 404: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TasksRewardFullResponseSchema; + } + | { + status: 404; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/src/types/paths/token.types.ts b/packages/mocks-counterfact/src/types/paths/token.types.ts new file mode 100644 index 0000000..849cbda --- /dev/null +++ b/packages/mocks-counterfact/src/types/paths/token.types.ts @@ -0,0 +1,50 @@ +// This code was automatically generated from an OpenAPI description. +// Do not edit this file. Edit the OpenAPI file instead. +// For more information, see https://github.com/pmcelhaney/counterfact/blob/main/docs/faq-generated-code.md + +import type { WideOperationArgument } from "../../types.ts"; +import type { OmitValueWhenNever } from "../../types.ts"; +import type { COUNTERFACT_RESPONSE } from "../../types.ts"; +import type { Context } from "../../routes/_.context.ts"; +import type { ResponseBuilderFactory } from "../../types.ts"; +import type { TokenResponseSchema } from "../components/schemas/TokenResponseSchema.js"; + +export type HTTP_POST = ( + $: OmitValueWhenNever<{ + query: never; + path: never; + header: never; + body: never; + context: Context; + response: ResponseBuilderFactory<{ + 200: { + headers: never; + requiredHeaders: never; + content: { + "application/json": { + schema: TokenResponseSchema; + }; + }; + }; + 455: { + headers: never; + requiredHeaders: never; + content: never; + }; + }>; + x: WideOperationArgument; + proxy: (url: string) => COUNTERFACT_RESPONSE; + user: { username?: string; password?: string }; + }>, +) => + | { + status: 200; + contentType?: "application/json"; + body?: TokenResponseSchema; + } + | { + status: 455; + } + | { status: 415; contentType: "text/plain"; body: string } + | COUNTERFACT_RESPONSE + | { ALL_REMAINING_HEADERS_ARE_OPTIONAL: COUNTERFACT_RESPONSE }; diff --git a/packages/mocks-counterfact/test/tsconfig.json b/packages/mocks-counterfact/test/tsconfig.json new file mode 100644 index 0000000..b12b0a6 --- /dev/null +++ b/packages/mocks-counterfact/test/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../../tsconfig-base.json", + "references": [{ "path": "../src" }], + "compilerOptions": { + "noEmit": true, + "declarationMap": false + } +} diff --git a/release-please-config.json b/release-please-config.json index d9289cf..a584074 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -1,19 +1,20 @@ { "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "plugins": ["node-workspace"], + "separate-pull-requests": true, "include-v-in-tag": true, "bump-minor-pre-major": true, "bump-patch-for-minor-pre-major": true, - "plugins": ["node-workspace"], - "separate-pull-requests": true, "packages": { - "packages/api-client": {} + "packages/api-client": {}, + "packages/mocks-counterfact": {} }, "changelog-sections": [ - { "type": "feat", "section": "Features" }, - { "type": "feature", "section": "Features" }, - { "type": "fix", "section": "Bug Fixes" }, - { "type": "perf", "section": "Performance Improvements" }, - { "type": "revert", "section": "Reverts" }, + { "type": "feat", "section": "Features", "hidden": false }, + { "type": "feature", "section": "Features", "hidden": false }, + { "type": "fix", "section": "Bug Fixes", "hidden": false }, + { "type": "perf", "section": "Performance Improvements", "hidden": false }, + { "type": "revert", "section": "Reverts", "hidden": false }, { "type": "docs", "section": "Documentation", "hidden": false }, { "type": "style", "section": "Styles", "hidden": false }, { "type": "chore", "section": "Miscellaneous Chores", "hidden": false },