    import ShadowModelAccess from 'f.lux/src/collection/ShadowModelAccess.js'

public class | source

# ShadowModelAccess

#### Extends:

Access → ShadowModelAccess

## Constructor Summary

Public Constructor
public | constructor(modelProperty: *, impl: *) |

## Member Summary

Public Members
public | [_modelProperty]: * |

## Method Summary

Public Methods
public | $$(): * |
public | cid(): * |
public | collection(): * |
public | create$ForChild(childImpl: *): * |
public | destroy(): * |
public | id(): * |
public | isDirty(): * |
public | isNew(): * |
public | isWaiting(): * |
public | remove(): * |
public | resetToCheckpoint() |
public | save(): * |

## Inherited Summary

From class Access
public | [_impl]: * |
public | checkpoint() Copies the current actual state for later reset using Property#resetToCheckpoint. |
public | clearCheckpoint() Clears an existing checkpoint created using Property#checkpoint. |
public | dotPath(): string Gets the path from root property using a dot (`.`) separator. |
public | getCheckpoint(): Object | Array Gets the checkpoint state previously recorded using Property#checkpoint. |
public | hasCheckpoint(): boolean Gets if an existing checkpoint has be created using Property#checkpoint. |
public | isActive(): boolean Gets if the shadow state property is proxying the current actual state contained in the f.lux store. |
public | isReadonly(): boolean Gets if the property allows for assignment through the shadow state, ie `todo.desc = "go skiing"`. |
public | isValid(): boolean Gets if the shadow property has experienced a mutation action. |
public | latest(): Shadow Gets the current shadow state for this property. |
public | nextState(): Object | Array Gets the next actual state for this property following any pending actions. |
public | path(): [] Gets the Property#name components from the root property to this property. |
public | pid(): number Gets the unique f.lux ID for this property. |
public | property(): Property Gets the Property managing this shadow property. |
public | resetToCheckpoint() Replaces the current property state with a checkpoint state previously recorded using Property#checkpoint. |
public | rootShadow(): Shadow Gets the top-level shadow from the Store containing this shadow state property. |
public | shadow(): * |
public | slashPath(): string Gets the path from root property using a slash (`/`) separator. |
public | state(): Object | Array Gets the actual state being shadowed. |
public | store(): Store Gets the {@Link Store} containing the application state. |
public | update(callback: *) Performs an update on the state values. |
public | waitFor(callback: function(shadow: Shadow)) Registers a one-time no argument callback to be invoked after the next Store state change. |

## Public Constructors

### public constructor(modelProperty: *, impl: *) source

#### Override:

Access#constructor

#### Params:

Name | Type | Attribute | Description
modelProperty | * |  |
impl | * |  |

## Public Members

### public [_modelProperty]: * source

## Public Methods

### public $$(): * source

#### Return:

*

### public cid(): * source

#### Return:

*

### public collection(): * source

#### Return:

*

### public create$ForChild(childImpl: *): * source

#### Params:

Name | Type | Attribute | Description
childImpl | * |  |

#### Return:

*

### public destroy(): * source

#### Return:

*

### public id(): * source

#### Return:

*

### public isDirty(): * source

#### Return:

*

### public isNew(): * source

#### Return:

*

### public isWaiting(): * source

#### Return:

*

### public remove(): * source

#### Return:

*

### public resetToCheckpoint() source

Replaces the current property state with a checkpoint state previously recorded using Property#checkpoint. The checkpoint is cleared.

#### Override:

Access#resetToCheckpoint

### public save(): * source

#### Return:

*