@4players/odin-common
Version:
A collection of commonly used type definitions and utility functions across ODIN web projects
59 lines (58 loc) • 2.72 kB
TypeScript
import { z } from 'zod';
export declare const TokenAudienceSchema: z.ZodEnum<["sfu", "gateway"]>;
export declare const TokenSubjectSchema: z.ZodEnum<["connect", "roomclose", "roomupdate", "roombanclient", "roomsendmessage"]>;
export declare const TokenClaimsSchema: z.ZodObject<{
uid: z.ZodString;
cid: z.ZodOptional<z.ZodString>;
rid: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
nsp: z.ZodOptional<z.ZodString>;
adr: z.ZodOptional<z.ZodString>;
aud: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["sfu", "gateway"]>, z.ZodArray<z.ZodEnum<["sfu", "gateway"]>, "many">]>>;
sub: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["connect", "roomclose", "roomupdate", "roombanclient", "roomsendmessage"]>, z.ZodArray<z.ZodEnum<["connect", "roomclose", "roomupdate", "roombanclient", "roomsendmessage"]>, "many">]>>;
exp: z.ZodOptional<z.ZodNumber>;
nbf: z.ZodOptional<z.ZodNumber>;
ups: z.ZodOptional<z.ZodString>;
tgs: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
tsp: z.ZodOptional<z.ZodNumber>;
internal: z.ZodOptional<z.ZodObject<{
server: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
server?: string | undefined;
}, {
server?: string | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
uid: string;
rid: string | string[];
sub?: "connect" | "roomclose" | "roomupdate" | "roombanclient" | "roomsendmessage" | ("connect" | "roomclose" | "roomupdate" | "roombanclient" | "roomsendmessage")[] | undefined;
cid?: string | undefined;
nsp?: string | undefined;
adr?: string | undefined;
aud?: "sfu" | "gateway" | ("sfu" | "gateway")[] | undefined;
exp?: number | undefined;
nbf?: number | undefined;
ups?: string | undefined;
tgs?: string | string[] | undefined;
tsp?: number | undefined;
internal?: {
server?: string | undefined;
} | undefined;
}, {
uid: string;
rid: string | string[];
sub?: "connect" | "roomclose" | "roomupdate" | "roombanclient" | "roomsendmessage" | ("connect" | "roomclose" | "roomupdate" | "roombanclient" | "roomsendmessage")[] | undefined;
cid?: string | undefined;
nsp?: string | undefined;
adr?: string | undefined;
aud?: "sfu" | "gateway" | ("sfu" | "gateway")[] | undefined;
exp?: number | undefined;
nbf?: number | undefined;
ups?: string | undefined;
tgs?: string | string[] | undefined;
tsp?: number | undefined;
internal?: {
server?: string | undefined;
} | undefined;
}>;
export type TokenClaims = z.infer<typeof TokenClaimsSchema>;
export declare function oneOrMany<T extends z.ZodTypeAny>(type: T): z.ZodUnion<[T, z.ZodArray<T, "many">]>;