Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface ListFactory

A ListFactory (pure function) constructor

Hierarchy

Callable

  • __call(__namedParameters: object): ListInstance
  • __call(state?: undefined | __type, ...encloseArgs: any[]): any
  • A ListFactory (pure function) constructor

    constructor

    Parameters

    • __namedParameters: object
      • items: undefined | Item[]

    Returns ListInstance

  • Invokes the stamp and returns a new object instance.

    Parameters

    • Optional state: undefined | __type

      Properties you wish to set on the new objects.

    • Rest ...encloseArgs: any[]

      The remaining arguments are passed to all .enclose() functions. WARNING Avoid using two different .enclose() functions that expect different arguments. .enclose() functions that take arguments should not be considered safe to compose with other .enclose() functions that also take arguments. Taking arguments with an .enclose() function is an anti-pattern that should be avoided, when possible.

    Returns any

    A new object composed of the Stamps and prototypes provided.

Index

Properties

compose

compose: Descriptor

Stamp metadata/composer function

Methods

conf

  • conf(...confs: Array<__type>): Stamp
  • Shallowly assign properties of Stamp arbitrary metadata and add them to a new stamp and any future Stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...confs: Array<__type>

      The object(s) containing metadata properties

    Returns Stamp

    A new Stamp

configuration

  • configuration(...confs: Array<__type>): Stamp
  • Shallowly assign properties of Stamp arbitrary metadata and add them to a new stamp and any future Stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...confs: Array<__type>

      The object(s) containing metadata properties

    Returns Stamp

    A new Stamp

create

  • create(state?: undefined | __type, ...encloseArgs: any[]): any
  • Just like calling stamp(), stamp.create() invokes the stamp and returns a new instance.

    Parameters

    • Optional state: undefined | __type

      Properties you wish to set on the new objects.

    • Rest ...encloseArgs: any[]

      The remaining arguments are passed to all .enclose() functions. WARNING Avoid using two different .enclose() functions that expect different arguments. .enclose() functions that take arguments should not be considered safe to compose with other .enclose() functions that also take arguments. Taking arguments with an .enclose() function is an anti-pattern that should be avoided, when possible.

    Returns any

    A new object composed of the Stamps and prototypes provided.

deepConf

  • deepConf(...deepConfs: Array<__type>): Stamp
  • Deeply merge properties of Stamp arbitrary metadata and add them to a new Stamp and any future Stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepConfs: Array<__type>

      The object(s) containing metadata properties

    Returns Stamp

    A new Stamp

deepConfiguration

  • deepConfiguration(...deepConfs: Array<__type>): Stamp
  • Deeply merge properties of Stamp arbitrary metadata and add them to a new Stamp and any future Stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepConfs: Array<__type>

      The object(s) containing metadata properties

    Returns Stamp

    A new Stamp

deepProperties

  • deepProperties(...deepObjects: Array<__type>): Stamp
  • Take a variable number of objects and deeply merge them to any future created instance of the Stamp. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepObjects: Array<__type>

      The object(s) to deeply merge for each new object

    Returns Stamp

    A new Stamp

deepProps

  • deepProps(...deepObjects: Array<__type>): Stamp
  • Take a variable number of objects and deeply merge them to any future created instance of the Stamp. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepObjects: Array<__type>

      The object(s) to deeply merge for each new object

    Returns Stamp

    A new Stamp

deepStatics

  • deepStatics(...deepStatics: Array<__type>): Stamp
  • Deeply merge a variable number of objects and add them to a new stamp and any future stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepStatics: Array<__type>

      The object(s) containing static properties to be merged

    Returns Stamp

    A new stamp

enclose

  • enclose(...functions: Init[]): Stamp
  • enclose(...functions: Array<__type>): Stamp
  • deprecated

    Use .init() instead.

    Parameters

    • Rest ...functions: Init[]

    Returns Stamp

  • deprecated

    Use .init() instead.

    Parameters

    • Rest ...functions: Array<__type>

    Returns Stamp

init

  • init(...functions: Init[]): Stamp
  • init(functions: Init[]): Stamp
  • Take in a variable number of functions and add them to the enclose prototype as initializers.

    Parameters

    • Rest ...functions: Init[]

      Initializer functions used to create private data and privileged methods

    Returns Stamp

    A new stamp

  • Take in a variable number of functions and add them to the enclose prototype as initializers.

    Parameters

    • functions: Init[]

      Initializer functions used to create private data and privileged methods

    Returns Stamp

    A new stamp

initializers

  • initializers(...functions: Init[]): Stamp
  • initializers(functions: Init[]): Stamp
  • Take in a variable number of functions and add them to the enclose prototype as initializers.

    Parameters

    • Rest ...functions: Init[]

      Initializer functions used to create private data and privileged methods

    Returns Stamp

    A new stamp

  • Take in a variable number of functions and add them to the enclose prototype as initializers.

    Parameters

    • functions: Init[]

      Initializer functions used to create private data and privileged methods

    Returns Stamp

    A new stamp

methods

  • methods(...methods: Array<__type>): Stamp
  • Add methods to the methods prototype. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...methods: Array<__type>

      Object(s) containing map of method names and bodies for delegation.

    Returns Stamp

    A new Stamp.

properties

  • properties(...objects: Array<__type>): Stamp
  • Take a variable number of objects and shallow assign them to any future created instance of the Stamp. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...objects: Array<__type>

      Object(s) to shallow assign for each new object.

    Returns Stamp

    A new Stamp.

propertyDescriptors

  • propertyDescriptors(...descriptors: Array<__type>): Stamp
  • Apply ES5 property descriptors to object instances created by the new Stamp returned by the function and any future Stamp it composes. Creates and returns a new stamp. Chainable.

    Parameters

    • Rest ...descriptors: Array<__type>

    Returns Stamp

    A new Stamp

props

  • props(...objects: Array<__type>): Stamp
  • Take a variable number of objects and shallow assign them to any future created instance of the Stamp. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...objects: Array<__type>

      Object(s) to shallow assign for each new object.

    Returns Stamp

    A new Stamp.

refs

  • refs(...states: Array<__type>): Stamp
  • Take n objects and add them to the state prototype. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...states: Array<__type>

      Object(s) containing map of property names and values to clone for each new object.

    Returns Stamp

    A new Stamp.

staticDeepProperties

  • staticDeepProperties(...deepStatics: Array<__type>): Stamp
  • Deeply merge a variable number of objects and add them to a new stamp and any future stamp it composes. Creates and returns a new Stamp. Chainable.

    Parameters

    • Rest ...deepStatics: Array<__type>

      The object(s) containing static properties to be merged

    Returns Stamp

    A new stamp

staticProperties

  • staticProperties(...statics: Array<__type>): Stamp
  • Take n objects and add them to a new stamp and any future stamp it composes with. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...statics: Array<__type>

      Object(s) containing map of property names and values to mixin into each new stamp.

    Returns Stamp

    A new Stamp.

staticPropertyDescriptors

  • staticPropertyDescriptors(...descriptors: Array<__type>): Stamp
  • Apply ES5 property descriptors to a Stamp and any future Stamp it composes. Creates and returns a new stamp. Chainable.

    Parameters

    • Rest ...descriptors: Array<__type>

    Returns Stamp

    A new Stamp

statics

  • statics(...statics: Array<__type>): Stamp
  • Take n objects and add them to a new stamp and any future stamp it composes with. Creates and returns new Stamp. Chainable.

    Parameters

    • Rest ...statics: Array<__type>

      Object(s) containing map of property names and values to mixin into each new stamp.

    Returns Stamp

    A new Stamp.

Generated using TypeDoc