message: adding recursive omit method
diff: @@ -31,7 +31,7 @@ export function writable(target: object, property: string | string[]): void {
  }
  export const noOp: (...args: any[]) => any = () => {
  - // no op!
  + // no operation here!
  };
  /**
  @@ -43,3 +43,10 @@ export type RecursivePartial<T> = {
  T[P] extends object ? RecursivePartial<T[P]> :
  T[P];
  };
  +
  +/**
  + * Recursive Omit modified from here: https://stackoverflow.com/a/54487392/1146428
  + */
  +type OmitDistributive<T, K extends string | number> = T extends any ? (T extends object ? Id<RecursiveOmit<T, K>> : T) : never;
  +type Id<T> = {} & { [P in keyof T]: T[P]} // Cosmetic use only makes the tooltips expand the type can be removed
  +export type RecursiveOmit<T extends any, K extends string | number> = Omit<{ [P in keyof T]: OmitDistributive<T[P], K> }, K>;
  