import * as z from 'zod'; /** * Zod schema for LTI Resource Link content item. * Represents a launchable LTI tool resource that can be embedded in the platform. * * @property type - Always 'ltiResourceLink' for this content type * @property url - Optional launch URL for the resource * @property custom - Optional custom parameters passed to the tool on launch * @property lineItem - Optional gradebook column configuration for this resource * @property available - Optional availability window with start/end dates * @property submission - Optional submission window with start/end dates * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#lti-resource-link */ export declare const LtiResourceLinkSchema: z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"ltiResourceLink">; url: z.ZodOptional; custom: z.ZodOptional>; lineItem: z.ZodOptional; tag: z.ZodOptional; }, z.core.$strip>>; available: z.ZodOptional; endDateTime: z.ZodOptional; }, z.core.$strip>>; submission: z.ZodOptional; endDateTime: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; /** * Zod schema for simple link content item. * Represents a standard web link that can be opened in various ways. * * @property type - Always 'link' for this content type * @property url - Target URL for the link * @property embed - Optional HTML embed code * @property window - Optional window configuration for opening the link * @property iframe - Optional iframe configuration for embedding the link * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#link */ export declare const LinkSchema: z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"link">; url: z.ZodURL; embed: z.ZodOptional>; window: z.ZodOptional; windowFeatures: z.ZodOptional; }, z.core.$strip>>; iframe: z.ZodOptional; height: z.ZodOptional; src: z.ZodURL; }, z.core.$strip>>; }, z.core.$strip>; /** * Zod schema for HTML fragment content item. * Represents raw HTML content to be embedded directly in the platform. * * @property type - Always 'html' for this content type * @property html - HTML content to be embedded * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#html-fragment */ export declare const HtmlSchema: z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"html">; html: z.ZodString; }, z.core.$strip>; /** * Zod schema for file content item. * Represents a downloadable file resource. * * @property type - Always 'file' for this content type * @property url - URL to download the file * @property mediaType - MIME type of the file * @property expiresAt - Optional expiration timestamp for the file URL * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#file */ export declare const FileSchema: z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"file">; url: z.ZodURL; mediaType: z.ZodString; expiresAt: z.ZodOptional; }, z.core.$strip>; /** * Zod schema for image content item. * Represents an image resource with optional dimensions. * * @property type - Always 'image' for this content type * @property url - URL to the image * @property width - Optional image width in pixels * @property height - Optional image height in pixels * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#image */ export declare const ImageSchema: z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"image">; url: z.ZodURL; width: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>; /** * Zod schema for validating any Deep Linking content item type. * Uses discriminated union on the 'type' field to determine the specific content item schema. * Supports: ltiResourceLink, link, html, file, and image content types. * * @see https://www.imsglobal.org/spec/lti-dl/v2p0#content-item-types */ export declare const ContentItemSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"ltiResourceLink">; url: z.ZodOptional; custom: z.ZodOptional>; lineItem: z.ZodOptional; tag: z.ZodOptional; }, z.core.$strip>>; available: z.ZodOptional; endDateTime: z.ZodOptional; }, z.core.$strip>>; submission: z.ZodOptional; endDateTime: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"link">; url: z.ZodURL; embed: z.ZodOptional>; window: z.ZodOptional; windowFeatures: z.ZodOptional; }, z.core.$strip>>; iframe: z.ZodOptional; height: z.ZodOptional; src: z.ZodURL; }, z.core.$strip>>; }, z.core.$strip>, z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"html">; html: z.ZodString; }, z.core.$strip>, z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"file">; url: z.ZodURL; mediaType: z.ZodString; expiresAt: z.ZodOptional; }, z.core.$strip>, z.ZodObject<{ title: z.ZodOptional; text: z.ZodOptional; icon: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; thumbnail: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>>; type: z.ZodLiteral<"image">; url: z.ZodURL; width: z.ZodOptional; height: z.ZodOptional; }, z.core.$strip>], "type">; /** * Type representing a validated LTI Resource Link content item. * Used for creating launchable LTI tool resources. */ export type DeepLinkingLtiResourceLink = z.infer; /** * Type representing a validated simple link content item. * Used for creating standard web links. */ export type DeepLinkingLink = z.infer; /** * Type representing a validated HTML fragment content item. * Used for embedding raw HTML content. */ export type DeepLinkingHtml = z.infer; /** * Type representing a validated file content item. * Used for linking to downloadable files. */ export type DeepLinkingFile = z.infer; /** * Type representing a validated image content item. * Used for embedding images. */ export type DeepLinkingImage = z.infer; /** * Type representing any validated Deep Linking content item. * Can be any of: DeepLinkingLtiResourceLink, DeepLinkingLink, DeepLinkingHtml, DeepLinkingFile, or DeepLinkingImage. */ export type DeepLinkingContentItem = z.infer; //# sourceMappingURL=contentItem.schema.d.ts.map