import type { Transaction, TransactionArgument, TransactionObjectArgument } from '@iota/iota-sdk/transactions'; import type { ObjectArgument } from '../types/index.js'; /** * Create a new shared Kiosk and returns the [kiosk, kioskOwnerCap] tuple. */ export declare function createKiosk(tx: Transaction): [TransactionObjectArgument, TransactionObjectArgument]; /** * Calls the `kiosk::new()` function and shares the kiosk. * Returns the `kioskOwnerCap` object. */ export declare function createKioskAndShare(tx: Transaction): TransactionObjectArgument; /** * Converts Transfer Policy to a shared object. */ export declare function shareKiosk(tx: Transaction, kiosk: TransactionArgument): void; /** * Call the `kiosk::place(Kiosk, KioskOwnerCap, Item)` function. * Place an item to the Kiosk. */ export declare function place(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, item: ObjectArgument): void; /** * Call the `kiosk::lock(Kiosk, KioskOwnerCap, TransferPolicy, Item)` * function. Lock an item in the Kiosk. * * Unlike `place` this function requires a `TransferPolicy` to exist * and be passed in. This is done to make sure the item does not get * locked without an option to take it out. */ export declare function lock(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, policy: ObjectArgument, item: ObjectArgument): void; /** * Call the `kiosk::take(Kiosk, KioskOwnerCap, ID)` function. * Take an item from the Kiosk. */ export declare function take(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, itemId: string): TransactionObjectArgument; /** * Call the `kiosk::list(Kiosk, KioskOwnerCap, ID, u64)` function. * List an item for sale. */ export declare function list(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, itemId: string, price: string | bigint): void; /** * Call the `kiosk::list(Kiosk, KioskOwnerCap, ID, u64)` function. * List an item for sale. */ export declare function delist(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, itemId: string): void; /** * Call the `kiosk::place_and_list(Kiosk, KioskOwnerCap, Item, u64)` function. * Place an item to the Kiosk and list it for sale. */ export declare function placeAndList(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, item: ObjectArgument, price: string | bigint): void; /** * Call the `kiosk::purchase(Kiosk, ID, Coin)` function and receive an Item and * a TransferRequest which needs to be dealt with (via a matching TransferPolicy). */ export declare function purchase(tx: Transaction, itemType: string, kiosk: ObjectArgument, itemId: string, payment: ObjectArgument): [TransactionObjectArgument, TransactionObjectArgument]; /** * Call the `kiosk::withdraw(Kiosk, KioskOwnerCap, Option)` function and receive a Coin. * If the amount is null, then the entire balance will be withdrawn. */ export declare function withdrawFromKiosk(tx: Transaction, kiosk: ObjectArgument, kioskCap: ObjectArgument, amount?: string | bigint | number): TransactionObjectArgument; /** * Call the `kiosk::borrow_value(Kiosk, KioskOwnerCap, ID): T` function. * Immutably borrow an item from the Kiosk and return it in the end. * * Requires calling `returnValue` to return the item. */ export declare function borrowValue(tx: Transaction, itemType: string, kiosk: ObjectArgument, kioskCap: ObjectArgument, itemId: string): [TransactionArgument, TransactionArgument]; /** * Call the `kiosk::return_value(Kiosk, Item, Borrow)` function. * Return an item to the Kiosk after it was `borrowValue`-d. */ export declare function returnValue(tx: Transaction, itemType: string, kiosk: ObjectArgument, item: TransactionArgument, promise: TransactionArgument): void; //# sourceMappingURL=kiosk.d.ts.map