Kiosk is a simple yet highly customizable tool for building and interacting with commerce applications on chain. In its simplest form, a Kiosk is an object that stores users' assets and allows trading them for a price. Just like an old-school real-world kiosk - a single owner, a single place, different items for sale.
Almost all of the functions of the Kiosk are only available to the Kiosk Owner - the exception would be the Purchase function, and it's derivative - PurchaseCap, both of which require the Kiosk Owner to first list the asset for sale.
In this section we'll cover the basic functions of Kiosk, show how to use them in different environments (CLI, TypeScript), and how to extend the Kiosk functionality with custom logic.