logger.d.ts 669 B

1234567891011121314151617
  1. // Types for the logger plugin. This file must be put alongside the bundled
  2. // JavaScript file of the logger.
  3. import { Payload, Plugin } from "../types/index";
  4. export interface LoggerOption<S> {
  5. collapsed?: boolean;
  6. filter?: <P extends Payload>(mutation: P, stateBefore: S, stateAfter: S) => boolean;
  7. transformer?: (state: S) => any;
  8. mutationTransformer?: <P extends Payload>(mutation: P) => any;
  9. actionFilter?: <P extends Payload>(action: P, state: S) => boolean;
  10. actionTransformer?: <P extends Payload>(action: P) => any;
  11. logMutations?: boolean;
  12. logActions?: boolean;
  13. }
  14. export default function createLogger<S>(option?: LoggerOption<S>): Plugin<S>;