import type { $Type, $Typed, LexMap, TypedObjectSchema, Unknown$TypedObject, Validator } from '@atproto/lex'; /** * The narrowing performed by {@link isTypeOf}: like lex-schema's * `MaybeTypedObject` (the narrowing of `TypedObjectSchema.isTypeOf`), except * `$type` is required on the result rather than optional. */ export type TypedObject = TValue extends { $type: TType; } ? TValue : $Typed, TType>; /** * Strict variant of `TypedObjectSchema.isTypeOf`, which we prefer because the * schema method matches when `$type` is missing — fine for discriminating * accurately-typed unions, but a footgun on imperfectly-typed data, where an * unrelated object silently "matches". This guard also requires `$type` to * be present. */ export declare function isTypeOf, TValue extends Record>(schema: TypedObjectSchema, value: TValue): value is TypedObject; //# sourceMappingURL=types.d.ts.map