FungibleTokenOfferContract

Class: FungibleTokenOfferContract

Properties overview

  • events: {
    buy: typeof OfferEvent;
    offer: typeof OfferEvent;
    updateWhitelist: typeof Whitelist;
    withdraw: typeof OfferEvent;
    };
  • buy: typeof OfferEvent = OfferEvent;
  • offer: typeof OfferEvent = OfferEvent;
  • updateWhitelist: typeof Whitelist = Whitelist;
  • withdraw: typeof OfferEvent = OfferEvent;
  • Overrides: SmartContract.events
  • price: State;
  • seller: State;
  • token: State;
  • whitelist: State;
  • Overrides: SmartContract.deploy

Methods overview

  • buy()
  • deploy()
  • initialize()
  • offer()
  • updateWhitelist()
  • withdraw()

Defined in: packages/token/src/offer.ts:29

Extends

  • SmartContract

Constructors

new FungibleTokenOfferContract()

new FungibleTokenOfferContract(address: PublicKey, tokenId?: Field): FungibleTokenOfferContract

Defined in: node_modules/o1js/dist/node/lib/mina/zkapp.d.ts:148

Parameters

address

PublicKey

tokenId?

Field

Returns

FungibleTokenOfferContract

Inherited from

SmartContract.constructor

Properties

events

events: {
  buy: typeof OfferEvent;
  offer: typeof OfferEvent;
  updateWhitelist: typeof Whitelist;
  withdraw: typeof OfferEvent;
};

Defined in: packages/token/src/offer.ts:47

A list of event types that can be emitted using this.emitEvent()`.

buy

buy: typeof OfferEvent = OfferEvent;

offer

offer: typeof OfferEvent = OfferEvent;

updateWhitelist

updateWhitelist: typeof Whitelist = Whitelist;

withdraw

withdraw: typeof OfferEvent = OfferEvent;

Overrides

SmartContract.events

price

price: State<UInt64>;

Defined in: packages/token/src/offer.ts:30


seller

seller: State<PublicKey>;

Defined in: packages/token/src/offer.ts:31


token

token: State<PublicKey>;

Defined in: packages/token/src/offer.ts:32


whitelist

whitelist: State<Whitelist>;

Defined in: packages/token/src/offer.ts:33

Methods

buy()

buy(amount: UInt64): Promise<void>

Defined in: packages/token/src/offer.ts:118

Parameters

amount

UInt64

Returns

Promise<void>


deploy()

deploy(args: FungibleTokenOfferContractDeployProps): Promise<void>

Defined in: packages/token/src/offer.ts:35

Deploys a SmartContract.

let tx = await Mina.transaction(sender, async () => {
  AccountUpdate.fundNewAccount(sender);
  await zkapp.deploy();
});
tx.sign([senderKey, zkAppKey]);

Parameters

args

FungibleTokenOfferContractDeployProps

Returns

Promise<void>

Overrides

SmartContract.deploy

initialize()

initialize(
   seller: PublicKey, 
   token: PublicKey, 
   amount: UInt64, 
price: UInt64): Promise<void>

Defined in: packages/token/src/offer.ts:54

Parameters

seller

PublicKey

token

PublicKey

amount

UInt64

price

UInt64

Returns

Promise<void>


offer()

offer(amount: UInt64, price: UInt64): Promise<void>

Defined in: packages/token/src/offer.ts:72

Parameters

amount

UInt64

price

UInt64

Returns

Promise<void>


updateWhitelist()

updateWhitelist(whitelist: Whitelist): Promise<void>

Defined in: packages/token/src/offer.ts:154

Parameters

whitelist

Whitelist

Returns

Promise<void>


withdraw()

withdraw(amount: UInt64): Promise<void>

Defined in: packages/token/src/offer.ts:97

Parameters

amount

UInt64

Returns

Promise<void>