import type { Request } from 'express'; export declare type UserProfile = { sub: string; id: number; username: string; iat: number; exp: number; }; export declare type Editable = { -readonly [K in keyof T]: T[K]; }; export declare type GqlContext = { req: Request; user: Partial; }; export declare type PrimitiveType = string | number | boolean | null | undefined | Date | symbol | bigint; export declare type Hint = { [P in keyof T]?: T[P] extends PrimitiveType ? T[P] : Hint; } & Record; export declare type HintWithValueType = { [P in keyof T]?: T[P] extends PrimitiveType ? TType : Hint; } & Record; type NonFunctionKeyNames = Exclude<{ [key in keyof T]: T[key] extends Function ? never : key; }[keyof T], undefined>; type RemoveFunctions = Pick>; export declare type DtoOf = RemoveFunctions; export {};