@r4ai/remark-embed
Version:
[](https://jsr.io/@r4ai/remark-embed) [](https://codecov.io/gh/r4ai/remark-embed) [![CI](https://github.com/r4ai/remark-emb
187 lines • 11.9 kB
TypeScript
import * as v from "valibot";
export type OEmbedBase = {
version: string;
title?: string | undefined;
author_name?: string | undefined;
author_url?: string | undefined;
provider_name?: string | undefined;
provider_url?: string | undefined;
cache_age?: number | undefined;
thumbnails?: [{
url?: string;
width?: number;
height?: number;
}] | undefined;
};
export declare const OEmbedBaseSchema: v.ObjectSchema<{
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>;
export declare const OEmbedPhotoSchema: v.ObjectSchema<{
readonly type: v.LiteralSchema<"photo", undefined>;
readonly url: v.StringSchema<undefined>;
readonly width: v.NumberSchema<undefined>;
readonly height: v.NumberSchema<undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>;
export type OEmbedPhoto = OEmbedBase & {
type: "photo";
url: string;
width: number;
height: number;
};
export declare const OEmbedVideoSchema: v.ObjectSchema<{
readonly type: v.LiteralSchema<"video", undefined>;
readonly html: v.StringSchema<undefined>;
readonly width: v.NumberSchema<undefined>;
readonly height: v.NumberSchema<undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>;
export type OEmbedVideo = OEmbedBase & {
type: "video";
html: string;
width: number;
height: number;
};
export declare const OEmbedLinkSchema: v.ObjectSchema<{
readonly type: v.LiteralSchema<"link", undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>;
export type OEmbedLink = OEmbedBase & {
type: "link";
};
export declare const OEmbedRichSchema: v.ObjectSchema<{
readonly type: v.LiteralSchema<"rich", undefined>;
readonly html: v.StringSchema<undefined>;
readonly width: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>;
export type OEmbedRich = OEmbedBase & {
type: "rich";
html: string;
width: number | null;
height: number | null;
};
export declare const OEmbedSchema: v.UnionSchema<[v.ObjectSchema<{
readonly type: v.LiteralSchema<"photo", undefined>;
readonly url: v.StringSchema<undefined>;
readonly width: v.NumberSchema<undefined>;
readonly height: v.NumberSchema<undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>, v.ObjectSchema<{
readonly type: v.LiteralSchema<"video", undefined>;
readonly html: v.StringSchema<undefined>;
readonly width: v.NumberSchema<undefined>;
readonly height: v.NumberSchema<undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>, v.ObjectSchema<{
readonly type: v.LiteralSchema<"link", undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>, v.ObjectSchema<{
readonly type: v.LiteralSchema<"rich", undefined>;
readonly html: v.StringSchema<undefined>;
readonly width: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
readonly version: v.StringSchema<undefined>;
readonly title: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly author_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_name: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly provider_url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly cache_age: v.OptionalSchema<v.UnionSchema<[v.NumberSchema<undefined>, v.SchemaWithPipe<[v.StringSchema<undefined>, v.TransformAction<string, number>]>], undefined>, undefined>;
readonly thumbnails: v.OptionalSchema<v.TupleSchema<[v.ObjectSchema<{
readonly url: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
readonly width: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
readonly height: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
}, undefined>], undefined>, undefined>;
}, undefined>], undefined>;
export type OEmbed = OEmbedPhoto | OEmbedVideo | OEmbedLink | OEmbedRich;
//# sourceMappingURL=schemas.d.ts.map