declare module "packages/com/almostreliable/merequester/mixin/accessors/$SlotMixin" {
export {} // Mark the file as a module, do not remove unless there are other import/exports!
export interface $SlotMixin {

 "merequester$setX"(arg0: integer): void
 "merequester$setY"(arg0: integer): void
}

export namespace $SlotMixin {
const probejs$$marker: never
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $SlotMixin$Type = ($SlotMixin);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $SlotMixin_ = $SlotMixin$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$StorageManager" {
import {$CompoundTag, $CompoundTag$Type} from "packages/net/minecraft/nbt/$CompoundTag"
import {$IStorageWatcherNode, $IStorageWatcherNode$Type} from "packages/appeng/api/networking/storage/$IStorageWatcherNode"
import {$AEKey, $AEKey$Type} from "packages/appeng/api/stacks/$AEKey"
import {$TagSerializable, $TagSerializable$Type} from "packages/com/almostreliable/merequester/platform/$TagSerializable"
import {$StorageManager$Storage, $StorageManager$Storage$Type} from "packages/com/almostreliable/merequester/requester/$StorageManager$Storage"
import {$IStackWatcher, $IStackWatcher$Type} from "packages/appeng/api/networking/$IStackWatcher"

export class $StorageManager implements $IStorageWatcherNode, $TagSerializable<($CompoundTag)> {


public "get"(slot: integer): $StorageManager$Storage
public "deserialize"(tag: $CompoundTag$Type): void
public "updateWatcher"(newWatcher: $IStackWatcher$Type): void
public "onStackChange"(key: $AEKey$Type, amount: long): void
public "computeAmountToCraft"(slot: integer): long
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $StorageManager$Type = ($StorageManager);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $StorageManager_ = $StorageManager$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$Requests" {
import {$CompoundTag, $CompoundTag$Type} from "packages/net/minecraft/nbt/$CompoundTag"
import {$Component, $Component$Type} from "packages/net/minecraft/network/chat/$Component"
import {$Direction, $Direction$Type} from "packages/net/minecraft/core/$Direction"
import {$TagSerializable, $TagSerializable$Type} from "packages/com/almostreliable/merequester/platform/$TagSerializable"
import {$ItemStack, $ItemStack$Type} from "packages/net/minecraft/world/item/$ItemStack"
import {$FuzzyMode, $FuzzyMode$Type} from "packages/appeng/api/config/$FuzzyMode"
import {$InternalInventory, $InternalInventory$Type} from "packages/appeng/api/inventories/$InternalInventory"
import {$Consumer, $Consumer$Type} from "packages/java/util/function/$Consumer"
import {$ItemTransfer, $ItemTransfer$Type} from "packages/appeng/api/inventories/$ItemTransfer"
import {$MEStorage, $MEStorage$Type} from "packages/appeng/api/storage/$MEStorage"
import {$BlockEntity, $BlockEntity$Type} from "packages/net/minecraft/world/level/block/entity/$BlockEntity"
import {$Container, $Container$Type} from "packages/net/minecraft/world/$Container"
import {$BlockPos, $BlockPos$Type} from "packages/net/minecraft/core/$BlockPos"
import {$Actionable, $Actionable$Type} from "packages/appeng/api/config/$Actionable"
import {$KeyCounter, $KeyCounter$Type} from "packages/appeng/api/stacks/$KeyCounter"
import {$AEKeyType, $AEKeyType$Type} from "packages/appeng/api/stacks/$AEKeyType"
import {$Predicate, $Predicate$Type} from "packages/java/util/function/$Predicate"
import {$RequestHost, $RequestHost$Type} from "packages/com/almostreliable/merequester/requester/abstraction/$RequestHost"
import {$AEKey, $AEKey$Type} from "packages/appeng/api/stacks/$AEKey"
import {$Level, $Level$Type} from "packages/net/minecraft/world/level/$Level"
import {$IActionSource, $IActionSource$Type} from "packages/appeng/api/networking/security/$IActionSource"
import {$IItemHandler, $IItemHandler$Type} from "packages/net/minecraftforge/items/$IItemHandler"
import {$Spliterator, $Spliterator$Type} from "packages/java/util/$Spliterator"
import {$GenericStack, $GenericStack$Type} from "packages/appeng/api/stacks/$GenericStack"
import {$Requests$Request, $Requests$Request$Type} from "packages/com/almostreliable/merequester/requester/$Requests$Request"
import {$GenericInternalInventory, $GenericInternalInventory$Type} from "packages/appeng/api/behaviors/$GenericInternalInventory"
import {$Iterator, $Iterator$Type} from "packages/java/util/$Iterator"

export class $Requests implements $MEStorage, $GenericInternalInventory, $InternalInventory, $TagSerializable<($CompoundTag)> {

constructor(host: $RequestHost$Type)
constructor()

public "get"(index: integer): $Requests$Request
public "extract"(index: integer, key: $AEKey$Type, amount: long, mode: $Actionable$Type): long
public "insert"(index: integer, key: $AEKey$Type, amount: long, mode: $Actionable$Type): long
public "size"(): integer
public "getKey"(index: integer): $AEKey
public "getStack"(index: integer): $GenericStack
public "getCapacity"(keyType: $AEKeyType$Type): long
public "getDescription"(): $Component
public "serialize"(): $CompoundTag
public "setStack"(index: integer, stack: $GenericStack$Type): void
public "deserialize"(tag: $CompoundTag$Type): void
public "onChange"(): void
public "getAmount"(index: integer): long
public "isItemValid"(slot: integer, stack: $ItemStack$Type): boolean
public "getStackInSlot"(slot: integer): $ItemStack
public "getSlotLimit"(slot: integer): integer
public "isAllowed"(key: $AEKey$Type): boolean
public "getMaxAmount"(key: $AEKey$Type): long
public "canExtract"(): boolean
public "endBatch"(): void
public "endBatchSuppressed"(): void
public "beginBatch"(): void
public "canInsert"(): boolean
public "setItemDirect"(slot: integer, stack: $ItemStack$Type): void
public "firstAvailableIndex"(): integer
public "extract"(arg0: $AEKey$Type, arg1: long, arg2: $Actionable$Type, arg3: $IActionSource$Type): long
public "insert"(arg0: $AEKey$Type, arg1: long, arg2: $Actionable$Type, arg3: $IActionSource$Type): long
public "getAvailableStacks"(): $KeyCounter
public "getAvailableStacks"(arg0: $KeyCounter$Type): void
public static "checkPreconditions"(arg0: $AEKey$Type, arg1: long, arg2: $Actionable$Type, arg3: $IActionSource$Type): void
public "isPreferredStorageFor"(arg0: $AEKey$Type, arg1: $IActionSource$Type): boolean
public "clear"(): void
public "isEmpty"(): boolean
public "iterator"(): $Iterator<($ItemStack)>
public static "empty"(): $InternalInventory
public "getSubInventory"(arg0: integer, arg1: integer): $InternalInventory
public "extractItem"(arg0: integer, arg1: integer, arg2: boolean): $ItemStack
public "insertItem"(arg0: integer, arg1: $ItemStack$Type, arg2: boolean): $ItemStack
public "simulateSimilarRemove"(arg0: integer, arg1: $ItemStack$Type, arg2: $FuzzyMode$Type, arg3: $Predicate$Type<($ItemStack$Type)>): $ItemStack
public "sendChangeNotification"(arg0: integer): void
public "removeItems"(arg0: integer, arg1: $ItemStack$Type, arg2: $Predicate$Type<($ItemStack$Type)>): $ItemStack
public "toContainer"(): $Container
public "removeSimilarItems"(arg0: integer, arg1: $ItemStack$Type, arg2: $FuzzyMode$Type, arg3: $Predicate$Type<($ItemStack$Type)>): $ItemStack
public "toItemHandler"(): $IItemHandler
public "getSlotInv"(arg0: integer): $InternalInventory
public "getRedstoneSignal"(): integer
public "simulateRemove"(arg0: integer, arg1: $ItemStack$Type, arg2: $Predicate$Type<($ItemStack$Type)>): $ItemStack
public static "wrapExternal"(arg0: $BlockEntity$Type, arg1: $Direction$Type): $ItemTransfer
public static "wrapExternal"(arg0: $Level$Type, arg1: $BlockPos$Type, arg2: $Direction$Type): $ItemTransfer
public "addItems"(arg0: $ItemStack$Type, arg1: boolean): $ItemStack
public "addItems"(arg0: $ItemStack$Type): $ItemStack
public "simulateAdd"(arg0: $ItemStack$Type): $ItemStack
public "mayAllowInsertion"(): boolean
public "spliterator"(): $Spliterator<($ItemStack)>
public "forEach"(arg0: $Consumer$Type<(any)>): void
[Symbol.iterator](): IterableIterator<$ItemStack>;
get "description"(): $Component
get "availableStacks"(): $KeyCounter
get "redstoneSignal"(): integer
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $Requests$Type = ($Requests);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $Requests_ = $Requests$Type;
}}
declare module "packages/com/almostreliable/unified/utils/$UnifyTag" {
import {$Item, $Item$Type} from "packages/net/minecraft/world/item/$Item"
import {$Record, $Record$Type} from "packages/java/lang/$Record"
import {$Class, $Class$Type} from "packages/java/lang/$Class"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"
import {$Block, $Block$Type} from "packages/net/minecraft/world/level/block/$Block"

export class $UnifyTag<T> extends $Record {

constructor(boundType: $Class$Type<(T)>, location: $ResourceLocation$Type)

public "equals"(o: any): boolean
public "toString"(): string
public "hashCode"(): integer
public "location"(): $ResourceLocation
public static "block"(location: $ResourceLocation$Type): $UnifyTag<($Block)>
public static "item"(location: $ResourceLocation$Type): $UnifyTag<($Item)>
public "boundType"(): $Class<(T)>
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $UnifyTag$Type<T> = ($UnifyTag<(T)>);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $UnifyTag_<T> = $UnifyTag$Type<(T)>;
}}
declare module "packages/com/almostreliable/merequester/requester/status/$RequestStatus" {
import {$Enum, $Enum$Type} from "packages/java/lang/$Enum"

export class $RequestStatus extends $Enum<($RequestStatus)> {
static readonly "IDLE": $RequestStatus
static readonly "MISSING": $RequestStatus
static readonly "REQUEST": $RequestStatus
static readonly "PLAN": $RequestStatus
static readonly "LINK": $RequestStatus
static readonly "EXPORT": $RequestStatus


public static "values"(): ($RequestStatus)[]
public static "valueOf"(name: string): $RequestStatus
public "translateToClient"(): $RequestStatus
public "locksRequest"(): boolean
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $RequestStatus$Type = (("request") | ("idle") | ("missing") | ("link") | ("plan") | ("export")) | ($RequestStatus);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $RequestStatus_ = $RequestStatus$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$RequesterBlock" {
import {$Component, $Component$Type} from "packages/net/minecraft/network/chat/$Component"
import {$AEBaseEntityBlock, $AEBaseEntityBlock$Type} from "packages/appeng/block/$AEBaseEntityBlock"
import {$BlockBehaviour$Properties, $BlockBehaviour$Properties$Type} from "packages/net/minecraft/world/level/block/state/$BlockBehaviour$Properties"
import {$InteractionResult, $InteractionResult$Type} from "packages/net/minecraft/world/$InteractionResult"
import {$RequesterBlockEntity, $RequesterBlockEntity$Type} from "packages/com/almostreliable/merequester/requester/$RequesterBlockEntity"
import {$BlockState, $BlockState$Type} from "packages/net/minecraft/world/level/block/state/$BlockState"
import {$Level, $Level$Type} from "packages/net/minecraft/world/level/$Level"
import {$IdMapper, $IdMapper$Type} from "packages/net/minecraft/core/$IdMapper"
import {$ItemStack, $ItemStack$Type} from "packages/net/minecraft/world/item/$ItemStack"
import {$Block, $Block$Type} from "packages/net/minecraft/world/level/block/$Block"
import {$BlockGetter, $BlockGetter$Type} from "packages/net/minecraft/world/level/$BlockGetter"
import {$TooltipFlag, $TooltipFlag$Type} from "packages/net/minecraft/world/item/$TooltipFlag"
import {$StateDefinition, $StateDefinition$Type} from "packages/net/minecraft/world/level/block/state/$StateDefinition"
import {$Player, $Player$Type} from "packages/net/minecraft/world/entity/player/$Player"
import {$InteractionHand, $InteractionHand$Type} from "packages/net/minecraft/world/$InteractionHand"
import {$List, $List$Type} from "packages/java/util/$List"
import {$BlockHitResult, $BlockHitResult$Type} from "packages/net/minecraft/world/phys/$BlockHitResult"
import {$IOrientationStrategy, $IOrientationStrategy$Type} from "packages/appeng/api/orientation/$IOrientationStrategy"
import {$BlockPos, $BlockPos$Type} from "packages/net/minecraft/core/$BlockPos"

export class $RequesterBlock extends $AEBaseEntityBlock<($RequesterBlockEntity)> {
/**
 * 
 * @deprecated
 */
static readonly "BLOCK_STATE_REGISTRY": $IdMapper<($BlockState)>
static readonly "UPDATE_NEIGHBORS": integer
static readonly "UPDATE_CLIENTS": integer
static readonly "UPDATE_INVISIBLE": integer
static readonly "UPDATE_IMMEDIATE": integer
static readonly "UPDATE_KNOWN_SHAPE": integer
static readonly "UPDATE_SUPPRESS_DROPS": integer
static readonly "UPDATE_MOVE_BY_PISTON": integer
static readonly "UPDATE_NONE": integer
static readonly "UPDATE_ALL": integer
static readonly "UPDATE_ALL_IMMEDIATE": integer
static readonly "INDESTRUCTIBLE": float
static readonly "INSTANT": float
static readonly "UPDATE_LIMIT": integer
 "stateDefinition": $StateDefinition<($Block), ($BlockState)>
readonly "properties": $BlockBehaviour$Properties

constructor()

public "getOrientationStrategy"(): $IOrientationStrategy
public "appendHoverText"(stack: $ItemStack$Type, level: $BlockGetter$Type, tooltip: $List$Type<($Component$Type)>, flag: $TooltipFlag$Type): void
public "onActivated"(level: $Level$Type, pos: $BlockPos$Type, player: $Player$Type, hand: $InteractionHand$Type, stack: $ItemStack$Type, hit: $BlockHitResult$Type): $InteractionResult
get "orientationStrategy"(): $IOrientationStrategy
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $RequesterBlock$Type = ($RequesterBlock);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $RequesterBlock_ = $RequesterBlock$Type;
}}
declare module "packages/com/almostreliable/unified/config/$Config$Serializer" {
import {$JsonObject, $JsonObject$Type} from "packages/com/google/gson/$JsonObject"
import {$Supplier, $Supplier$Type} from "packages/java/util/function/$Supplier"
import {$Config, $Config$Type} from "packages/com/almostreliable/unified/config/$Config"

export class $Config$Serializer<T extends $Config> {

constructor()

public "isInvalid"(): boolean
public "serialize"(arg0: T): $JsonObject
public "deserialize"(arg0: $JsonObject$Type): T
public "safeGet"<V>(supplier: $Supplier$Type<(V)>, defaultValue: V): V
get "invalid"(): boolean
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $Config$Serializer$Type<T> = ($Config$Serializer<(T)>);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $Config$Serializer_<T> = $Config$Serializer$Type<(T)>;
}}
declare module "packages/com/almostreliable/unified/recipe/$ClientRecipeTracker" {
import {$InputReplacement, $InputReplacement$Type} from "packages/dev/latvian/mods/kubejs/recipe/$InputReplacement"
import {$RecipeSerializer, $RecipeSerializer$Type} from "packages/net/minecraft/world/item/crafting/$RecipeSerializer"
import {$NonNullList, $NonNullList$Type} from "packages/net/minecraft/core/$NonNullList"
import {$RecipeSchema, $RecipeSchema$Type} from "packages/dev/latvian/mods/kubejs/recipe/schema/$RecipeSchema"
import {$Ingredient, $Ingredient$Type} from "packages/net/minecraft/world/item/crafting/$Ingredient"
import {$Level, $Level$Type} from "packages/net/minecraft/world/level/$Level"
import {$ItemStack, $ItemStack$Type} from "packages/net/minecraft/world/item/$ItemStack"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"
import {$Recipe, $Recipe$Type} from "packages/net/minecraft/world/item/crafting/$Recipe"
import {$RegistryAccess, $RegistryAccess$Type} from "packages/net/minecraft/core/$RegistryAccess"
import {$ClientRecipeTracker$ClientRecipeLink, $ClientRecipeTracker$ClientRecipeLink$Type} from "packages/com/almostreliable/unified/recipe/$ClientRecipeTracker$ClientRecipeLink"
import {$RecipeType, $RecipeType$Type} from "packages/net/minecraft/world/item/crafting/$RecipeType"
import {$Container, $Container$Type} from "packages/net/minecraft/world/$Container"
import {$ReplacementMatch, $ReplacementMatch$Type} from "packages/dev/latvian/mods/kubejs/recipe/$ReplacementMatch"
import {$OutputReplacement, $OutputReplacement$Type} from "packages/dev/latvian/mods/kubejs/recipe/$OutputReplacement"

export class $ClientRecipeTracker implements $Recipe<($Container)> {
static readonly "ID": $ResourceLocation
static readonly "RECIPES": string
static readonly "NAMESPACE": string
static readonly "UNIFIED_FLAG": integer
static readonly "DUPLICATE_FLAG": integer
static readonly "SERIALIZER": $RecipeSerializer<($ClientRecipeTracker)>
static readonly "TYPE": $RecipeType<($ClientRecipeTracker)>


public "getLink"(recipeId: $ResourceLocation$Type): $ClientRecipeTracker$ClientRecipeLink
public "getResultItem"(registryAccess: $RegistryAccess$Type): $ItemStack
public "assemble"(container: $Container$Type, registryAccess: $RegistryAccess$Type): $ItemStack
public "matches"(container: $Container$Type, level: $Level$Type): boolean
public "getSerializer"(): $RecipeSerializer<(any)>
public "canCraftInDimensions"(width: integer, height: integer): boolean
public "getId"(): $ResourceLocation
public "showNotification"(): boolean
public "getToastSymbol"(): $ItemStack
public "getIngredients"(): $NonNullList<($Ingredient)>
public "getRemainingItems"(arg0: $Container$Type): $NonNullList<($ItemStack)>
public "isIncomplete"(): boolean
public "isSpecial"(): boolean
public "getMod"(): string
public "getType"(): $ResourceLocation
public "replaceInput"(match: $ReplacementMatch$Type, arg1: $InputReplacement$Type): boolean
public "hasInput"(match: $ReplacementMatch$Type): boolean
public "getSchema"(): $RecipeSchema
public "getOrCreateId"(): $ResourceLocation
public "hasOutput"(match: $ReplacementMatch$Type): boolean
public "replaceOutput"(match: $ReplacementMatch$Type, arg1: $OutputReplacement$Type): boolean
public "getGroup"(): string
public "setGroup"(group: string): void
get "serializer"(): $RecipeSerializer<(any)>
get "id"(): $ResourceLocation
get "toastSymbol"(): $ItemStack
get "ingredients"(): $NonNullList<($Ingredient)>
get "incomplete"(): boolean
get "special"(): boolean
get "mod"(): string
get "type"(): $ResourceLocation
get "schema"(): $RecipeSchema
get "orCreateId"(): $ResourceLocation
get "group"(): string
set "group"(value: string)
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $ClientRecipeTracker$Type = ($ClientRecipeTracker);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $ClientRecipeTracker_ = $ClientRecipeTracker$Type;
}}
declare module "packages/com/almostreliable/merequester/platform/$TagSerializable" {
import {$Tag, $Tag$Type} from "packages/net/minecraft/nbt/$Tag"

export interface $TagSerializable<T extends $Tag> {

 "serialize"(): T
 "deserialize"(arg0: T): void
}

export namespace $TagSerializable {
const probejs$$marker: never
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $TagSerializable$Type<T> = ($TagSerializable<(T)>);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $TagSerializable_<T> = $TagSerializable$Type<(T)>;
}}
declare module "packages/com/almostreliable/unified/config/$UnifyConfig$TagInheritanceMode" {
import {$Enum, $Enum$Type} from "packages/java/lang/$Enum"

export class $UnifyConfig$TagInheritanceMode extends $Enum<($UnifyConfig$TagInheritanceMode)> {
static readonly "ALLOW": $UnifyConfig$TagInheritanceMode
static readonly "DENY": $UnifyConfig$TagInheritanceMode


public static "values"(): ($UnifyConfig$TagInheritanceMode)[]
public static "valueOf"(name: string): $UnifyConfig$TagInheritanceMode
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $UnifyConfig$TagInheritanceMode$Type = (("allow") | ("deny")) | ($UnifyConfig$TagInheritanceMode);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $UnifyConfig$TagInheritanceMode_ = $UnifyConfig$TagInheritanceMode$Type;
}}
declare module "packages/com/almostreliable/unified/recipe/$ClientRecipeTracker$ClientRecipeLink" {
import {$Record, $Record$Type} from "packages/java/lang/$Record"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"

export class $ClientRecipeTracker$ClientRecipeLink extends $Record {

constructor(id: $ResourceLocation$Type, isUnified: boolean, isDuplicate: boolean)

public "equals"(o: any): boolean
public "toString"(): string
public "hashCode"(): integer
public "id"(): $ResourceLocation
public "isDuplicate"(): boolean
public "isUnified"(): boolean
get "duplicate"(): boolean
get "unified"(): boolean
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $ClientRecipeTracker$ClientRecipeLink$Type = ($ClientRecipeTracker$ClientRecipeLink);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $ClientRecipeTracker$ClientRecipeLink_ = $ClientRecipeTracker$ClientRecipeLink$Type;
}}
declare module "packages/com/almostreliable/unified/compat/$AlmostKube" {
import {$UnifyConfig, $UnifyConfig$Type} from "packages/com/almostreliable/unified/config/$UnifyConfig"
import {$Set, $Set$Type} from "packages/java/util/$Set"
import {$ItemStack, $ItemStack$Type} from "packages/net/minecraft/world/item/$ItemStack"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"

export class $AlmostKube {


public static "getTags"(): $Set<(string)>
public static "getUnifyConfig"(): $UnifyConfig
public static "getPreferredItemForTag"(tag: $ResourceLocation$Type): $ItemStack
public static "getPreferredTagForItem"(stack: $ItemStack$Type): string
public static "getReplacementForItem"(stack: $ItemStack$Type): $ItemStack
public static "getItemIds"(tag: $ResourceLocation$Type): $Set<(string)>
get "tags"(): $Set<(string)>
get "unifyConfig"(): $UnifyConfig
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $AlmostKube$Type = ($AlmostKube);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $AlmostKube_ = $AlmostKube$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$Requests$Request" {
import {$CompoundTag, $CompoundTag$Type} from "packages/net/minecraft/nbt/$CompoundTag"
import {$AEKey, $AEKey$Type} from "packages/appeng/api/stacks/$AEKey"
import {$RequestHost, $RequestHost$Type} from "packages/com/almostreliable/merequester/requester/abstraction/$RequestHost"
import {$TagSerializable, $TagSerializable$Type} from "packages/com/almostreliable/merequester/platform/$TagSerializable"
import {$RequestStatus, $RequestStatus$Type} from "packages/com/almostreliable/merequester/requester/status/$RequestStatus"

export class $Requests$Request implements $TagSerializable<($CompoundTag)> {


public "toString"(): string
public "getKey"(): $AEKey
public "getState"(): boolean
public "getIndex"(): integer
public "updateState"(state: boolean): void
public "serialize"(): $CompoundTag
public "deserialize"(tag: $CompoundTag$Type): void
public "getClientStatus"(): $RequestStatus
public "getAmount"(): long
public "isRequesting"(): boolean
public "updateBatch"(batch: long): void
public "isDifferent"(clientRequest: $Requests$Request$Type): boolean
public "updateAmount"(amount: long): void
public "getRequesterReference"(): $RequestHost
public "getBatch"(): long
get "key"(): $AEKey
get "state"(): boolean
get "index"(): integer
get "clientStatus"(): $RequestStatus
get "amount"(): long
get "requesting"(): boolean
get "requesterReference"(): $RequestHost
get "batch"(): long
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $Requests$Request$Type = ($Requests$Request);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $Requests$Request_ = $Requests$Request$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/abstraction/$RequestHost" {
import {$Component, $Component$Type} from "packages/net/minecraft/network/chat/$Component"
import {$Requests, $Requests$Type} from "packages/com/almostreliable/merequester/requester/$Requests"

export interface $RequestHost {

 "getTerminalName"(): $Component
 "getRequests"(): $Requests
 "requestChanged"(arg0: integer): void
 "isClientSide"(): boolean
 "saveChanges"(): void
}

export namespace $RequestHost {
const probejs$$marker: never
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $RequestHost$Type = ($RequestHost);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $RequestHost_ = $RequestHost$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$StorageManager$Storage" {
import {$CompoundTag, $CompoundTag$Type} from "packages/net/minecraft/nbt/$CompoundTag"
import {$AEKey, $AEKey$Type} from "packages/appeng/api/stacks/$AEKey"
import {$TagSerializable, $TagSerializable$Type} from "packages/com/almostreliable/merequester/platform/$TagSerializable"

export class $StorageManager$Storage implements $TagSerializable<($CompoundTag)> {

constructor()

public "getKey"(): $AEKey
public "compute"(inserted: long): boolean
public "deserialize"(tag: $CompoundTag$Type): void
public "getKnownAmount"(): long
public "setTotalAmount"(totalAmount: long): void
public "getBufferAmount"(): long
get "key"(): $AEKey
get "knownAmount"(): long
set "totalAmount"(value: long)
get "bufferAmount"(): long
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $StorageManager$Storage$Type = ($StorageManager$Storage);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $StorageManager$Storage_ = $StorageManager$Storage$Type;
}}
declare module "packages/com/almostreliable/unified/config/$Config" {
import {$Config$Serializer, $Config$Serializer$Type} from "packages/com/almostreliable/unified/config/$Config$Serializer"
import {$Path, $Path$Type} from "packages/java/nio/file/$Path"

export class $Config {

constructor()

public static "load"<T extends $Config>(name: string, serializer: $Config$Serializer$Type<(T)>): T
public static "save"<T extends $Config>(p: $Path$Type, config: T, serializer: $Config$Serializer$Type<(T)>): void
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $Config$Type = ($Config);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $Config_ = $Config$Type;
}}
declare module "packages/com/almostreliable/unified/recipe/$ClientRecipeTracker$Serializer" {
import {$ClientRecipeTracker, $ClientRecipeTracker$Type} from "packages/com/almostreliable/unified/recipe/$ClientRecipeTracker"
import {$JsonObject, $JsonObject$Type} from "packages/com/google/gson/$JsonObject"
import {$RecipeSerializer, $RecipeSerializer$Type} from "packages/net/minecraft/world/item/crafting/$RecipeSerializer"
import {$FriendlyByteBuf, $FriendlyByteBuf$Type} from "packages/net/minecraft/network/$FriendlyByteBuf"
import {$ICondition$IContext, $ICondition$IContext$Type} from "packages/net/minecraftforge/common/crafting/conditions/$ICondition$IContext"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"
import {$Recipe, $Recipe$Type} from "packages/net/minecraft/world/item/crafting/$Recipe"

export class $ClientRecipeTracker$Serializer implements $RecipeSerializer<($ClientRecipeTracker)> {

constructor()

public "fromJson"(recipeId: $ResourceLocation$Type, json: $JsonObject$Type): $ClientRecipeTracker
public "fromNetwork"(recipeId: $ResourceLocation$Type, buffer: $FriendlyByteBuf$Type): $ClientRecipeTracker
public "toNetwork"(buffer: $FriendlyByteBuf$Type, recipe: $ClientRecipeTracker$Type): void
public static "register"<S extends $RecipeSerializer<(T)>, T extends $Recipe<(any)>>(arg0: string, arg1: S): S
public "fromJson"(arg0: $ResourceLocation$Type, arg1: $JsonObject$Type, arg2: $ICondition$IContext$Type): $ClientRecipeTracker
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $ClientRecipeTracker$Serializer$Type = ($ClientRecipeTracker$Serializer);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $ClientRecipeTracker$Serializer_ = $ClientRecipeTracker$Serializer$Type;
}}
declare module "packages/com/almostreliable/unified/config/$UnifyConfig" {
import {$Collection, $Collection$Type} from "packages/java/util/$Collection"
import {$UnifyTag, $UnifyTag$Type} from "packages/com/almostreliable/unified/utils/$UnifyTag"
import {$UnifyConfig$TagInheritanceMode, $UnifyConfig$TagInheritanceMode$Type} from "packages/com/almostreliable/unified/config/$UnifyConfig$TagInheritanceMode"
import {$ResourceLocation, $ResourceLocation$Type} from "packages/net/minecraft/resources/$ResourceLocation"
import {$Block, $Block$Type} from "packages/net/minecraft/world/level/block/$Block"
import {$Config, $Config$Type} from "packages/com/almostreliable/unified/config/$Config"
import {$Item, $Item$Type} from "packages/net/minecraft/world/item/$Item"
import {$Holder, $Holder$Type} from "packages/net/minecraft/core/$Holder"
import {$Enum, $Enum$Type} from "packages/java/lang/$Enum"
import {$Pattern, $Pattern$Type} from "packages/java/util/regex/$Pattern"
import {$Set, $Set$Type} from "packages/java/util/$Set"
import {$List, $List$Type} from "packages/java/util/$List"
import {$Map, $Map$Type} from "packages/java/util/$Map"

export class $UnifyConfig extends $Config {
static readonly "NAME": string

constructor(modPriorities: $List$Type<(string)>, stoneStrata: $List$Type<(string)>, unbakedTags: $List$Type<(string)>, materials: $List$Type<(string)>, priorityOverrides: $Map$Type<($ResourceLocation$Type), (string)>, customTags: $Map$Type<($ResourceLocation$Type), ($Set$Type<($ResourceLocation$Type)>)>, tagOwnerships: $Map$Type<($ResourceLocation$Type), ($Set$Type<($ResourceLocation$Type)>)>, itemTagInheritanceMode: $Enum$Type<($UnifyConfig$TagInheritanceMode$Type)>, itemTagInheritance: $Map$Type<($ResourceLocation$Type), ($Set$Type<($Pattern$Type)>)>, blockTagInheritanceMode: $Enum$Type<($UnifyConfig$TagInheritanceMode$Type)>, blockTagInheritance: $Map$Type<($ResourceLocation$Type), ($Set$Type<($Pattern$Type)>)>, ignoredTags: $Set$Type<($UnifyTag$Type<($Item$Type)>)>, ignoredItems: $Set$Type<($Pattern$Type)>, ignoredRecipeTypes: $Set$Type<($Pattern$Type)>, ignoredRecipes: $Set$Type<($Pattern$Type)>, hideJeiRei: boolean)

public "clearCache"(): void
public "getTagOwnerships"(): $Map<($ResourceLocation), ($Set<($ResourceLocation)>)>
public "getMaterials"(): $List<(string)>
public "reiOrJeiDisabled"(): boolean
public "bakeAndValidateTags"(tags: $Map$Type<($ResourceLocation$Type), ($Collection$Type<($Holder$Type<($Item$Type)>)>)>): $Set<($UnifyTag<($Item)>)>
public "getPriorityOverrides"(): $Map<($ResourceLocation), (string)>
public "shouldInheritBlockTag"(itemTag: $UnifyTag$Type<($Block$Type)>, dominantTags: $Set$Type<($UnifyTag$Type<($Item$Type)>)>): boolean
public "shouldInheritItemTag"(itemTag: $UnifyTag$Type<($Item$Type)>, dominantTags: $Set$Type<($UnifyTag$Type<($Item$Type)>)>): boolean
public "getCustomTags"(): $Map<($ResourceLocation), ($Set<($ResourceLocation)>)>
public "includeRecipe"(recipe: $ResourceLocation$Type): boolean
public "includeItem"(item: $ResourceLocation$Type): boolean
public "getModPriorities"(): $List<(string)>
public "bakeTags"(): $Set<($UnifyTag<($Item)>)>
public "getStoneStrata"(): $List<(string)>
public "includeRecipeType"(type: $ResourceLocation$Type): boolean
get "tagOwnerships"(): $Map<($ResourceLocation), ($Set<($ResourceLocation)>)>
get "materials"(): $List<(string)>
get "priorityOverrides"(): $Map<($ResourceLocation), (string)>
get "customTags"(): $Map<($ResourceLocation), ($Set<($ResourceLocation)>)>
get "modPriorities"(): $List<(string)>
get "stoneStrata"(): $List<(string)>
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $UnifyConfig$Type = ($UnifyConfig);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $UnifyConfig_ = $UnifyConfig$Type;
}}
declare module "packages/com/almostreliable/merequester/requester/$RequesterBlockEntity" {
import {$TickingRequest, $TickingRequest$Type} from "packages/appeng/api/networking/ticking/$TickingRequest"
import {$CompoundTag, $CompoundTag$Type} from "packages/net/minecraft/nbt/$CompoundTag"
import {$Component, $Component$Type} from "packages/net/minecraft/network/chat/$Component"
import {$StorageManager, $StorageManager$Type} from "packages/com/almostreliable/merequester/requester/$StorageManager"
import {$IGridNode, $IGridNode$Type} from "packages/appeng/api/networking/$IGridNode"
import {$SettingsFrom, $SettingsFrom$Type} from "packages/appeng/util/$SettingsFrom"
import {$ItemStack, $ItemStack$Type} from "packages/net/minecraft/world/item/$ItemStack"
import {$Requests, $Requests$Type} from "packages/com/almostreliable/merequester/requester/$Requests"
import {$TickRateModulation, $TickRateModulation$Type} from "packages/appeng/api/networking/ticking/$TickRateModulation"
import {$ImmutableSet, $ImmutableSet$Type} from "packages/com/google/common/collect/$ImmutableSet"
import {$Player, $Player$Type} from "packages/net/minecraft/world/entity/player/$Player"
import {$List, $List$Type} from "packages/java/util/$List"
import {$BlockPos, $BlockPos$Type} from "packages/net/minecraft/core/$BlockPos"
import {$BlockOrientation, $BlockOrientation$Type} from "packages/appeng/api/orientation/$BlockOrientation"
import {$Actionable, $Actionable$Type} from "packages/appeng/api/config/$Actionable"
import {$AEKey, $AEKey$Type} from "packages/appeng/api/stacks/$AEKey"
import {$RequestHost, $RequestHost$Type} from "packages/com/almostreliable/merequester/requester/abstraction/$RequestHost"
import {$BlockEntityType, $BlockEntityType$Type} from "packages/net/minecraft/world/level/block/entity/$BlockEntityType"
import {$BlockState, $BlockState$Type} from "packages/net/minecraft/world/level/block/state/$BlockState"
import {$Level, $Level$Type} from "packages/net/minecraft/world/level/$Level"
import {$AENetworkBlockEntity, $AENetworkBlockEntity$Type} from "packages/appeng/blockentity/grid/$AENetworkBlockEntity"
import {$IActionSource, $IActionSource$Type} from "packages/appeng/api/networking/security/$IActionSource"
import {$ICraftingRequester, $ICraftingRequester$Type} from "packages/appeng/api/networking/crafting/$ICraftingRequester"
import {$ICraftingLink, $ICraftingLink$Type} from "packages/appeng/api/networking/crafting/$ICraftingLink"
import {$IGridTickable, $IGridTickable$Type} from "packages/appeng/api/networking/ticking/$IGridTickable"
import {$IGrid, $IGrid$Type} from "packages/appeng/api/networking/$IGrid"

export class $RequesterBlockEntity extends $AENetworkBlockEntity implements $RequestHost, $IGridTickable, $ICraftingRequester {

constructor(blockEntityType: $BlockEntityType$Type<(any)>, pos: $BlockPos$Type, blockState: $BlockState$Type)

public "getTerminalName"(): $Component
public "getRequests"(): $Requests
public "requestChanged"(index: integer): void
public "getMainNodeGrid"(): $IGrid
public "getStorageManager"(): $StorageManager
public "m_183515_"(tag: $CompoundTag$Type): void
public "getTickingRequest"(node: $IGridNode$Type): $TickingRequest
public "tickingRequest"(node: $IGridNode$Type, ticksSinceLastCall: integer): $TickRateModulation
public "importSettings"(mode: $SettingsFrom$Type, input: $CompoundTag$Type, player: $Player$Type): void
public "exportSettings"(mode: $SettingsFrom$Type, output: $CompoundTag$Type, player: $Player$Type): void
public "addAdditionalDrops"(level: $Level$Type, pos: $BlockPos$Type, drops: $List$Type<($ItemStack$Type)>): void
public "getSortValue"(): long
public "onReady"(): void
public "loadTag"(tag: $CompoundTag$Type): void
public "onOrientationChanged"(orientation: $BlockOrientation$Type): void
public "getRequestedJobs"(): $ImmutableSet<($ICraftingLink)>
public "getActionSource"(): $IActionSource
public "insertCraftedItems"(link: $ICraftingLink$Type, what: $AEKey$Type, amount: long, mode: $Actionable$Type): long
public "jobStateChange"(link: $ICraftingLink$Type): void
public "isClientSide"(): boolean
public "saveChanges"(): void
public "getActionableNode"(): $IGridNode
public static "tryClear"(arg0: any): void
get "terminalName"(): $Component
get "requests"(): $Requests
get "mainNodeGrid"(): $IGrid
get "storageManager"(): $StorageManager
get "sortValue"(): long
get "requestedJobs"(): $ImmutableSet<($ICraftingLink)>
get "actionSource"(): $IActionSource
get "clientSide"(): boolean
get "actionableNode"(): $IGridNode
}
/**
 * Class-specific type exported by ProbeJS, use global Type_
 * types for convenience unless there's a naming conflict.
 */
export type $RequesterBlockEntity$Type = ($RequesterBlockEntity);
/**
 * Global type exported for convenience, use class-specific
 * types if there's a naming conflict.
 */
declare global {
export type $RequesterBlockEntity_ = $RequesterBlockEntity$Type;
}}
