Skip to content

Implement Shared Royalty Token contracts  #89

@barlock

Description

@barlock

Overview

As a developer building a PIB token, I'd like a reference implementation, interfaces, and abstract classes so that I can quickly iterate on my dApp PIB token implementation.

Reference

Questions

  • HMW scale a Shared Royalty Token and allow for virtually unlimited franchisors?
    • Gas prices on transfer will likely increase drastically on transfer function if math is in there preventing sale after a certain number
  • How do we handle withdraw?
    • Is there an ERC standard for handling this allowing for rounding error?
    • Likely there is something to do with the first question here. 🤷‍♂️
  • Is 721 the correct abstraction?

Assumptions

Acceptance

  • Shared Royalty Token
    • A Shared Royalty Token interface ISharedRoyaltyToken
    • An abstract contract SRT AbstractSharedRoyaltyToken.
      • Contains common SRT implmentations
  • SharedRoyaltyTokenEnumerable enumerable
    • Interface ISharedRoyaltyTokenEnumerable
    • Implemented SharedRoyaltyTokenEnumerable for extending
  • PIBBookendToken
    • Implements abstract class and transferPayoutByFranchisorIndex to match bookend model

Story Draft

  • Create withdrawal SharedRoyaltyToken interface (likely just find an existing ERC or other art)
  • Implement ISharedRoyaltyToken (pib interface)
  • Implement ISharedRoyaltyTokenEnumerable (Enumerable interface)
  • Implement AbstractSharedRoyaltyToken
  • Implement SharedRoyaltyTokenEnumerable
  • Implement SharedRoyaltyBookendToken

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions