| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- import {Except} from './except';
 
- import {ConditionalKeys} from './conditional-keys';
 
- /**
 
- Exclude keys from a shape that matches the given `Condition`.
 
- This is useful when you want to create a new type with a specific set of keys from a shape. For example, you might want to exclude all the primitive properties from a class and form a new shape containing everything but the primitive properties.
 
- @example
 
- ```
 
- import {Primitive, ConditionalExcept} from 'type-fest';
 
- class Awesome {
 
- 	name: string;
 
- 	successes: number;
 
- 	failures: bigint;
 
- 	run() {}
 
- }
 
- type ExceptPrimitivesFromAwesome = ConditionalExcept<Awesome, Primitive>;
 
- //=> {run: () => void}
 
- ```
 
- @example
 
- ```
 
- import {ConditionalExcept} from 'type-fest';
 
- interface Example {
 
- 	a: string;
 
- 	b: string | number;
 
- 	c: () => void;
 
- 	d: {};
 
- }
 
- type NonStringKeysOnly = ConditionalExcept<Example, string>;
 
- //=> {b: string | number; c: () => void; d: {}}
 
- ```
 
- */
 
- export type ConditionalExcept<Base, Condition> = Except<
 
- 	Base,
 
- 	ConditionalKeys<Base, Condition>
 
- >;
 
 
  |