import type { CollectibleType, ItemPoolType } from "isaac-typescript-definitions";
import { Feature } from "../../private/Feature";
export declare class SpawnCollectible extends Feature {
    private readonly preventCollectibleRotation;
    /**
     * Helper function to spawn a collectible.
     *
     * Use this instead of the `Game.Spawn` method because it handles the cases of Tainted Keeper
     * collectibles costing coins and preventing quest items from being rotated by Tainted Isaac's
     * rotation mechanic.
     *
     * If you do not need to handle quest items being rotated (i.e. the collectible is guaranteed not
     * to be a quest item), then you can use the `spawnCollectibleUnsafe` helper function instead
     * (which does not require an upgraded mod).
     *
     * In order to use this function, you must upgrade your mod with `ISCFeature.SPAWN_COLLECTIBLE`.
     *
     * @param collectibleType The collectible type to spawn.
     * @param positionOrGridIndex The position or grid index to spawn the collectible at.
     * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided,
     *                  the `RNG.Next` method will be called. Default is `getRandomSeed()`.
     * @param options Optional. Set to true to make the collectible a "There's Options" style
     *                collectible. Default is false.
     * @param forceFreeItem Optional. Set to true to disable the logic that gives the item a price for
     *                      Tainted Keeper. Default is false.
     * @param spawner Optional.
     */
    spawnCollectible(collectibleType: CollectibleType, positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
    /**
     * Helper function to spawn a collectible from a specific item pool.
     *
     * Use this instead of the `Game.Spawn` method because it handles the cases of Tainted Keeper
     * collectibles costing coins and preventing quest items from being rotated by Tainted Isaac's
     * rotation mechanic.
     *
     * In order to use this function, you must upgrade your mod with `ISCFeature.SPAWN_COLLECTIBLE`.
     *
     * @param itemPoolType The item pool to draw the collectible type from.
     * @param positionOrGridIndex The position or grid index to spawn the collectible at.
     * @param seedOrRNG Optional. The `Seed` or `RNG` object to use. If an `RNG` object is provided,
     *                  the `RNG.Next` method will be called. Default is `getRandomSeed()`.
     * @param options Optional. Set to true to make the collectible a "There's Options" style
     *                collectible. Default is false.
     * @param forceFreeItem Optional. Set to true to disable the logic that gives the item a price for
     *                      Tainted Keeper. Default is false.
     * @param spawner Optional.
     */
    spawnCollectibleFromPool(itemPoolType: ItemPoolType, positionOrGridIndex: Vector | int, seedOrRNG?: Seed | RNG, options?: boolean, forceFreeItem?: boolean, spawner?: Entity): EntityPickupCollectible;
}
//# sourceMappingURL=SpawnCollectible.d.ts.map