type ExtractArgs = T[keyof T] extends (...args: infer A) => any ? A : any[]; type EventState> = T & { (key?: keyof T, fun?: T[keyof T]): EventState; (target?: Partial): EventState; }; type Vec3 = [x: number, y: number, z: number]; interface OrientState { snapshot: [OrientState]; active: boolean; _active: boolean; _value: Vec3; value: Vec3; delta: Vec3; offset: Vec3; movement: Vec3; memo: any; callback(): void; change(): void; mount(): void; clean(): void; } type OrientArg = Partial | OrientState['change']; declare const orientEvent: () => EventState; export { type OrientArg, type OrientState, orientEvent };