diff --git a/packages/common/src/applyToClass.ts b/packages/common/src/applyToClass.ts deleted file mode 100644 index e1a3a82..0000000 --- a/packages/common/src/applyToClass.ts +++ /dev/null @@ -1,29 +0,0 @@ -export function applyToClass< - T extends new ( - ..._args: ConstructorParameters - ) => InstanceType, - U extends new ( - ..._args: ConstructorParameters - ) => InstanceType - // @ts-expect-error ->(structToApply: T, struct: U, ignore?: (keyof T['prototype'])[]) { - const props = Object.getOwnPropertyNames(structToApply.prototype); - for (const prop of props) { - if (ignore?.includes(prop as keyof T) || prop === 'constructor') continue; - Object.defineProperty(struct.prototype, prop, Object.getOwnPropertyDescriptor(structToApply.prototype, prop)!); - } - return struct as unknown as Struct; -} - -// rome-ignore lint/nursery/noBannedTypes: fix applyToClass typing -export type Struct = Final extends new ( - ..._args: never[] -) => infer F - ? ToMix extends new ( - ..._args: never[] - ) => infer TM - ? new ( - ..._args: ConstructorParameters - ) => F & TM - : never - : never; diff --git a/packages/common/src/index.ts b/packages/common/src/index.ts index e200ec3..eee595e 100644 --- a/packages/common/src/index.ts +++ b/packages/common/src/index.ts @@ -2,6 +2,5 @@ export * from './Constants'; export * from './Util'; export * from './Types'; export * from 'discord-api-types/v10'; -export * from './applyToClass'; export * from './Collection'; export * from './Logger';