0.1.6Updated a month ago
declare namespace Audience {
  interface Options<CustomFields extends Audience.CustomFieldMap, PEMC extends Entity.Meta.Config = Entity.Meta.Config> extends Entity.Options<PEMC> {
    /**
     * Should this ledger allow users to go into negative balances?
     * 
     * If this is false, `.AddEntry()` will *fail* when trying to subtract below a zero balance.
     * 
     * **Default**: `false`
     * */
    allow_negative_balances?: boolean
  
    /**
     * Expiration options for a ledger instance
     */
    expiration?: Ledger.Expiration.Options
  
    /**
     * REST API options for a ledger instance
     */
    rest?: Ledger.RestOptions
  }

  namespace Options {
    type Optional<CustomFields extends Audience.CustomFieldMap, PEMC extends Entity.Meta.Config> = Omit<Options<CustomFields, PEMC>, 'key'> & Partial<Pick<Options<CustomFields, PEMC>, 'key'>>
  }
}