A component is a function from a parent DOM node to a now computation I.e. something like `type Component<A> = (p: Node) => Now<A>`. We don't define it as a type alias because we wan't to make it a monad in different way than Now.

### Type parameters

- #### A

### Hierarchy

- Component

## Index

### Constructors

- constructor

### Properties

- content
- of

### Methods

- chain
- flatten
- lift
- map
- mapTo
- of

## Constructors

### constructor

- new Component(content: function): Component

- - Defined in framework.ts:23

  #### Parameters

  - ##### content: function

    - - (n: Node): Now<A>

      - #### Parameters

        - ##### n: Node

        #### Returns Now<A>

  #### Returns Component

## Properties

### content

content: function

- Defined in framework.ts:24

#### Type declaration

- - (n: Node): Now<A>

  - #### Parameters

    - ##### n: Node

    #### Returns Now<A>

### of

of: function = Component.of

- Defined in framework.ts:28

#### Type declaration

- - <B>(b: B): Component<B>

  - #### Type parameters

    - #### B

    #### Parameters

    - ##### b: B

    #### Returns Component<B>

## Methods

### chain

- chain<B>(f: function): Component<B>

- - Defined in framework.ts:29

  #### Type parameters

  - #### B

  #### Parameters

  - ##### f: function

    - - (a: A): Component<B>

      - #### Parameters

        - ##### a: A

        #### Returns Component<B>

### flatten

- flatten<B>(now: Component<Component<A>>): Component<A>

- - Defined in framework.ts:36

  #### Type parameters

  - #### B

  #### Parameters

  - ##### now: Component<Component<A>>

  #### Returns Component<A>

### lift

- lift<T1, R>(f: function, m: Component<T1>): Component<R>
- lift<T1, T2, R>(f: function, m1: Component<T1>, m2: Component<T2>): Component<R>
- lift<T1, T2, T3, R>(f: function, m1: Component<T1>, m2: Component<T2>, m3: Component<T3>): Component<R>

- - Defined in framework.ts:45

  #### Type parameters

  - #### T1

  - #### R

  #### Parameters

  - ##### f: function

    - - (t: T1): R

      - #### Parameters

        - ##### t: T1

        #### Returns R

  - ##### m: Component<T1>

  #### Returns Component<R>

- - Defined in framework.ts:46

  #### Type parameters

  - #### T1

  - #### T2

  - #### R

  #### Parameters

  - ##### f: function

    - - (t: T1, u: T2): R

      - #### Parameters

        - ##### t: T1

        - ##### u: T2

        #### Returns R

  - ##### m1: Component<T1>

  - ##### m2: Component<T2>

  #### Returns Component<R>

- - Defined in framework.ts:47

  #### Type parameters

  - #### T1

  - #### T2

  - #### T3

  - #### R

  #### Parameters

  - ##### f: function

    - - (t1: T1, t2: T2, t3: T3): R

      - #### Parameters

        - ##### t1: T1

        - ##### t2: T2

        - ##### t3: T3

        #### Returns R

  - ##### m1: Component<T1>

  - ##### m2: Component<T2>

  - ##### m3: Component<T3>

  #### Returns Component<R>

### map

- map<B>(f: function): Component<B>

- - Defined in framework.ts:39

  #### Type parameters

  - #### B

  #### Parameters

  - ##### f: function

    - - (a: A): B

      - #### Parameters

        - ##### a: A

        #### Returns B

  #### Returns Component<B>

### mapTo

- mapTo<B>(b: B): Component<B>

- - Defined in framework.ts:42

  #### Type parameters

  - #### B

  #### Parameters

  - ##### b: B

  #### Returns Component<B>

### of

- of<B>(b: B): Component<B>

- - Defined in framework.ts:25

  #### Type parameters

  - #### B

  #### Parameters

  - ##### b: B

  #### Returns Component<B>

Generated using TypeDoc