import { Observable } from 'rxjs';
import { prop, parse } from './prop';
import { changes$ } from './events.rx';
import {
  ILocalStorageOptions,
  ILocalStorageChangedEvent,
  LocalStorageProp,
} from './types';

export { ILocalStorageOptions, LocalStorageProp };
export * from './types';

export const localStorage = {
  prop,
  parse,
  changes$: changes$ as Observable<ILocalStorageChangedEvent>,
};
