Interface BuilderContext<TPrevData, TProperty, TMethodCaller>

interface BuilderContext<TPrevData, TProperty, TMethodCaller> {
    data: Merge<DataWithPropertyValues<TPrevData, TProperty>>;
    implement: (<TIn>(this, traitBehavior, impl) => void);
    lifetime: (<L>(this, name, func) => void);
    listener: (<T>(this, func) => EventListener<T> & {
        [TaggedSymbol]: [typeof METHOD_TAG];
    });
    method: (<Fn>(this, func) => Tag<Fn, typeof METHOD_TAG>);
    pageLifetime: ((this, name, func) => void);
    self: TMethodCaller;
    setData: ((this, newData, callback?) => void);
    observer<P, V>(this, paths, func): void;
    observer<P, V>(this, paths, func): void;
    relation<TOut>(this, def): RelationHandler<any, TOut>;
    relation(this, def): RelationHandler<any, never>;
}

Type Parameters

  • TPrevData extends DataList
  • TProperty extends PropertyList
  • TMethodCaller

Hierarchy

Properties

implement: (<TIn>(this, traitBehavior, impl) => void)

Type declaration

    • <TIn>(this, traitBehavior, impl): void
    • Type Parameters

      • TIn extends {
            [x: string]: any;
        }

      Parameters

      Returns void

lifetime: (<L>(this, name, func) => void)

Type declaration

    • <L>(this, name, func): void
    • Type Parameters

      • L extends keyof Lifetimes

      Parameters

      • this: void
      • name: L
      • func: Lifetimes[L]

      Returns void

listener: (<T>(this, func) => EventListener<T> & {
    [TaggedSymbol]: [typeof METHOD_TAG];
})

Type declaration

    • <T>(this, func): EventListener<T> & {
          [TaggedSymbol]: [typeof METHOD_TAG];
      }
    • Type Parameters

      • T

      Parameters

      Returns EventListener<T> & {
          [TaggedSymbol]: [typeof METHOD_TAG];
      }

method: (<Fn>(this, func) => Tag<Fn, typeof METHOD_TAG>)

Type declaration

    • <Fn>(this, func): Tag<Fn, typeof METHOD_TAG>
    • Type Parameters

      • Fn extends ComponentMethod

      Parameters

      • this: void
      • func: Fn

      Returns Tag<Fn, typeof METHOD_TAG>

pageLifetime: ((this, name, func) => void)

Type declaration

    • (this, name, func): void
    • Parameters

      • this: void
      • name: string
      • func: ((...args) => void)
          • (...args): void
          • Parameters

            • Rest ...args: any[]

            Returns void

      Returns void

setData: ((this, newData, callback?) => void)

Type declaration

    • (this, newData, callback?): void
    • Parameters

      Returns void

Methods