hopefully fix types
This commit is contained in:
parent
8df7656eee
commit
10074e197f
6 changed files with 38 additions and 35 deletions
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "ts-osc",
|
||||
"version": "0.2.4",
|
||||
"version": "0.2.5",
|
||||
"description": "Fully TypeScript-native OSC Client based on osc-min",
|
||||
"main": "./lib/index.js",
|
||||
"types": "./lib/index.d.ts",
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
export * from './oscClient';
|
||||
export * from './oscServer';
|
||||
export { OSCType, OSCArgumentType } from 'osc-min';
|
||||
export { OSCType, OSCArgumentType } from './types';
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import * as dgram from 'dgram';
|
||||
import { OSCArgument, OSCType, toBuffer, OSCArgumentType } from 'osc-min';
|
||||
import { toBuffer } from 'osc-min';
|
||||
import { OSCArgument, OSCType, OSCArgumentType } from './types';
|
||||
import { EventEmitter } from 'events';
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
import EventEmitter = require('events');
|
||||
import * as dgram from 'dgram';
|
||||
import { OSCType, OSCArgumentType, fromBuffer } from 'osc-min';
|
||||
import { fromBuffer } from 'osc-min';
|
||||
import { OSCType, OSCArgumentType } from './types';
|
||||
|
||||
export interface ReceivedOSCMessage<T extends OSCType> {
|
||||
address: string;
|
||||
|
|
|
|||
31
src/types.ts
Normal file
31
src/types.ts
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
export interface OSCArgument<T extends OSCType> {
|
||||
type: T;
|
||||
value: OSCArgumentType<T>;
|
||||
}
|
||||
|
||||
export enum OSCType {
|
||||
String = 'string',
|
||||
Float = 'float',
|
||||
Integer = 'integer',
|
||||
Blob = 'blob',
|
||||
True = 'true',
|
||||
False = 'false',
|
||||
Null = 'null',
|
||||
Bang = 'bang',
|
||||
Timetag = 'timetag',
|
||||
Array = 'array',
|
||||
}
|
||||
|
||||
export type OSCArgumentType<T extends OSCType> = T extends OSCType.String
|
||||
? string
|
||||
: T extends OSCType.Float | OSCType.Integer | OSCType.Timetag
|
||||
? number
|
||||
: T extends OSCType.True
|
||||
? true
|
||||
: T extends OSCType.False
|
||||
? false
|
||||
: T extends OSCType.Blob
|
||||
? Buffer
|
||||
: T extends OSCType.Array
|
||||
? OSCArgument<OSCType>[]
|
||||
: null;
|
||||
32
src/types/osc-min.d.ts
vendored
32
src/types/osc-min.d.ts
vendored
|
|
@ -1,16 +1,5 @@
|
|||
declare module 'osc-min' {
|
||||
export enum OSCType {
|
||||
String = 'string',
|
||||
Float = 'float',
|
||||
Integer = 'integer',
|
||||
Blob = 'blob',
|
||||
True = 'true',
|
||||
False = 'false',
|
||||
Null = 'null',
|
||||
Bang = 'bang',
|
||||
Timetag = 'timetag',
|
||||
Array = 'array',
|
||||
}
|
||||
import { OSCType, OSCArgumentType, OSCArgument } from '../types';
|
||||
|
||||
export type OSCTimeTag = [number, number];
|
||||
export type OutgoingOSCArgsTypes = (OSCArgument<OSCType> | Buffer | boolean | string | number)[];
|
||||
|
|
@ -31,25 +20,6 @@ declare module 'osc-min' {
|
|||
elements: (OSCMessage | OSCBundle)[];
|
||||
}
|
||||
|
||||
export type OSCArgumentType<T extends OSCType> = T extends OSCType.String
|
||||
? string
|
||||
: T extends OSCType.Float | OSCType.Integer | OSCType.Timetag
|
||||
? number
|
||||
: T extends OSCType.True
|
||||
? true
|
||||
: T extends OSCType.False
|
||||
? false
|
||||
: T extends OSCType.Blob
|
||||
? Buffer
|
||||
: T extends OSCType.Array
|
||||
? OSCArgument<OSCType>[]
|
||||
: null;
|
||||
|
||||
export interface OSCArgument<T extends OSCType> {
|
||||
type: T;
|
||||
value: OSCArgumentType<T>;
|
||||
}
|
||||
|
||||
type OSCPacket = OSCMessage | OSCBundle;
|
||||
|
||||
export function fromBuffer(buffer: Buffer, strict?: boolean): OSCPacket;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue