68 lines
1.9 KiB
TypeScript
68 lines
1.9 KiB
TypeScript
import { Type } from "@sinclair/typebox";
|
|
import { NonEmptyString } from "./primitives.js";
|
|
|
|
export const DevicePairListParamsSchema = Type.Object({}, { additionalProperties: false });
|
|
|
|
export const DevicePairApproveParamsSchema = Type.Object(
|
|
{ requestId: NonEmptyString },
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DevicePairRejectParamsSchema = Type.Object(
|
|
{ requestId: NonEmptyString },
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DevicePairRemoveParamsSchema = Type.Object(
|
|
{ deviceId: NonEmptyString },
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DeviceTokenRotateParamsSchema = Type.Object(
|
|
{
|
|
deviceId: NonEmptyString,
|
|
role: NonEmptyString,
|
|
scopes: Type.Optional(Type.Array(NonEmptyString)),
|
|
},
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DeviceTokenRevokeParamsSchema = Type.Object(
|
|
{
|
|
deviceId: NonEmptyString,
|
|
role: NonEmptyString,
|
|
},
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DevicePairRequestedEventSchema = Type.Object(
|
|
{
|
|
requestId: NonEmptyString,
|
|
deviceId: NonEmptyString,
|
|
publicKey: NonEmptyString,
|
|
displayName: Type.Optional(NonEmptyString),
|
|
platform: Type.Optional(NonEmptyString),
|
|
deviceFamily: Type.Optional(NonEmptyString),
|
|
clientId: Type.Optional(NonEmptyString),
|
|
clientMode: Type.Optional(NonEmptyString),
|
|
role: Type.Optional(NonEmptyString),
|
|
roles: Type.Optional(Type.Array(NonEmptyString)),
|
|
scopes: Type.Optional(Type.Array(NonEmptyString)),
|
|
remoteIp: Type.Optional(NonEmptyString),
|
|
silent: Type.Optional(Type.Boolean()),
|
|
isRepair: Type.Optional(Type.Boolean()),
|
|
ts: Type.Integer({ minimum: 0 }),
|
|
},
|
|
{ additionalProperties: false },
|
|
);
|
|
|
|
export const DevicePairResolvedEventSchema = Type.Object(
|
|
{
|
|
requestId: NonEmptyString,
|
|
deviceId: NonEmptyString,
|
|
decision: NonEmptyString,
|
|
ts: Type.Integer({ minimum: 0 }),
|
|
},
|
|
{ additionalProperties: false },
|
|
);
|