import { BreezeEnum } from './enum';
/**
EntityState is an 'Enum' containing all of the valid states for an 'Entity'.
**/
export declare class EntityState extends BreezeEnum {
    /** The 'Unchanged' state. **/
    static Unchanged: EntityState;
    /**  The 'Added' state.  **/
    static Added: EntityState;
    /**  The 'Modified' state.   **/
    static Modified: EntityState;
    /**  The 'Deleted' state.  **/
    static Deleted: EntityState;
    /**  The 'Detached' state.  **/
    static Detached: EntityState;
    /**
    Returns whether an entityState instance is EntityState.Unchanged.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isUnchanged();
  
    is the same as
    >     return es === EntityState.Unchanged;
    **/
    isUnchanged(): boolean;
    /**
    Return whether an entityState instance is EntityState.Added.
    
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isAdded();
  
    is the same as
    >     return es === EntityState.Added;
    **/
    isAdded(): boolean;
    /**
    Returns whether an entityState instance is EntityState.Modified.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isModified();
  
    is the same as
    >     return es === EntityState.Modified;
    **/
    isModified(): boolean;
    /**
    Returns whether an entityState instance is EntityState.Deleted.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isDeleted();
  
    is the same as
    
    >     return es === EntityState.Deleted;
    **/
    isDeleted(): boolean;
    /**
    Returns whether an entityState instance is EntityState.Detached.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isDetached();
  
    is the same as
    >     return es === EntityState.Detached;
    **/
    isDetached(): boolean;
    /** Return true if EntityState is Deleted or Detached */
    isDeletedOrDetached(): boolean;
    /**
    Returns whether an entityState instance is EntityState.Unchanged or EntityState.Modified.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isUnchangedOrModified();
  
    is the same as
    >     return es === EntityState.Unchanged || es === EntityState.Modified
    **/
    isUnchangedOrModified(): boolean;
    /** Return true if EntityStatis is Added or Modified */
    isAddedOrModified(): boolean;
    /** Returns whether an entityState instance is EntityState.Added or EntityState.Modified or EntityState.Deleted.
    >     var es = anEntity.entityAspect.entityState;
    >     return es.isAddedModifiedOrDeleted();
  
    is the same as
    >     return es === EntityState.Added || es === EntityState.Modified || es === EntityState.Deleted
    **/
    isAddedModifiedOrDeleted(): boolean;
}
