UNPKG

@davidlj95/ngx-meta

Version:

Set your Angular site's metadata: standard meta tags, Open Graph, Twitter Cards, JSON-LD structured data and more. Supports SSR (and Angular Universal). Use a service. Use routes' data. Set it up in a flash! 🚀

435 lines (431 loc) 12.5 kB
// Generated by dts-bundle-generator v9.5.1 import * as i0 from '@angular/core'; import { Provider } from '@angular/core'; /** * Manages the {@link TwitterCard.card} metadata * @public */ export declare const provideTwitterCardCard: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardCard} * @deprecated Use {@link provideTwitterCardCard} instead * @public */ export declare const TWITTER_CARD_CARD_METADATA_PROVIDER: import("@angular/core").Provider; /** * See {@link TwitterCardType} * @public */ export declare const TWITTER_CARD_TYPE_SUMMARY = "summary"; /** * See {@link TwitterCardType} * @public */ export declare const TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE = "summary_large_image"; /** * See {@link TwitterCardType} * @public */ export declare const TWITTER_CARD_TYPE_APP = "app"; /** * See {@link TwitterCardType} * @public */ export declare const TWITTER_CARD_TYPE_PLAYER = "player"; /** * Card types for {@link TwitterCard.card} property * * @remarks * * Use one of the referenced constants to avoid typing them yourself :) * * @public */ export type TwitterCardType = typeof TWITTER_CARD_TYPE_SUMMARY | typeof TWITTER_CARD_TYPE_SUMMARY_LARGE_IMAGE | typeof TWITTER_CARD_TYPE_APP | typeof TWITTER_CARD_TYPE_PLAYER; /** * Manages the {@link TwitterCard.creator} metadata * @public */ export declare const provideTwitterCardCreator: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardCreator} * @deprecated Use {@link provideTwitterCardCreator} instead * @public */ export declare const TWITTER_CARD_CREATOR_METADATA_PROVIDER: import("@angular/core").Provider; /** * `@username` or Twitter ID of the content creator. * * Used in {@link TwitterCard.creator} with type {@link TwitterCardCreator} * * @remarks * * Provider: * * {@link provideTwitterCardCreator} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Acreator | Property specs (username) } * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Acreator%3Aid,-Twitter | Property specs (id) } * * @example * * Providing both the `@username` and id. Just one of them is enough though. * * ```typescript * const twitterCardCreator: TwitterCardCreator = { * username: '@example', * id: 16542877, * } * ``` * * @public */ export type TwitterCardCreator = TwitterCardCreatorUsername | TwitterCardCreatorId | (TwitterCardCreatorUsername & TwitterCardCreatorId); /** * See {@link TwitterCardCreator} * @public */ export interface TwitterCardCreatorUsername { /** * `@username` of content creator. * * Used with `summary_large_image` cards. * * In other words, same ones as {@link TwitterCardCreatorId} except for `summary` cards. * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Acreator | Property specs} */ username: string | null; } /** * See {@link TwitterCardCreator} * @public */ export interface TwitterCardCreatorId { /** * Twitter user ID of content creator. * * Used with `summary`, `summary_large_image` cards. * * In other words, same ones as {@link TwitterCardCreatorUsername} plus `summary` cards. * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Acreator%3Aid,-Twitter | Property specs } * * - {@link https://twiteridfinder.com/ | Find your Twitter ID} */ id: string | null; } /** * Manages the {@link TwitterCard.description} metadata * @public */ export declare const provideTwitterCardDescription: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardDescription} * @deprecated Use {@link provideTwitterCardDescription} instead * @public */ export declare const TWITTER_CARD_DESCRIPTION_METADATA_PROVIDER: import("@angular/core").Provider; /** * Manages the {@link TwitterCard.image} metadata * @public */ export declare const provideTwitterCardImage: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardImage} * @deprecated Use {@link provideTwitterCardImage} instead * @public */ export declare const TWITTER_CARD_IMAGE_METADATA_PROVIDER: import("@angular/core").Provider; /** * Image for the card. * * Equivalent to {@link OpenGraph.image}. This one can be omitted if equivalent is set. * * Can be set with {@link GlobalMetadata.image}. * * Used in {@link TwitterCard.image} with type {@link TwitterCardImage} * * @remarks * * Provider: * * {@link provideTwitterCardImage} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=og%3Atitle-,twitter%3Aimage,-URL%20of%20image | Property specs} * @public */ export interface TwitterCardImage { /** * URL of image to use in the card. Images must be less than 5MB in size. * * JPG, PNG, WEBP and GIF formats are supported. * * Only the first frame of an animated GIF will be used. * * SVG is not supported. * * Used with `summary`, `summary_large_image`, `player` cards * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=og%3Atitle-,twitter%3Aimage,-URL%20of%20image | Property specs} */ readonly url: string | URL; /** * A text description of the image conveying the essential nature of an image * to users who are visually impaired. * * Maximum 420 characters. * * Used with `summary`, `summary_large_image`, `player` cards * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=og%3Atitle-,twitter%3Aimage,-URL%20of%20image | Property specs} */ readonly alt: string; } /** * Manages the {@link TwitterCard.site} metadata * @public */ export declare const provideTwitterCardSite: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardSite} * @deprecated Use {@link provideTwitterCardSite} instead * @public */ export declare const TWITTER_CARD_SITE_METADATA_PROVIDER: import("@angular/core").Provider; /** * `@username` or Twitter ID of the author of the website. * * Either {@link TwitterCardSiteUsername} or {@link TwitterCardSiteId} is required. * * Used in {@link TwitterCard.site} with type {@link TwitterCardSite} * * @remarks * * Provider: * * {@link provideTwitterCardSite} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Asite, | Property specs (username) } * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Asite%3Aid,-Same%20as%20twitter | Property specs (id) } * * @example * * Providing both the `@username` and id. Just one of them is enough though. * * ```typescript * const twitterCardSite: TwitterCardSite = { * username: '@example', * id: 16542877, * } * ``` * * @public */ export type TwitterCardSite = TwitterCardSiteUsername | TwitterCardSiteId | (TwitterCardSiteUsername & TwitterCardSiteId); /** * See {@link TwitterCardSite} * @public */ export interface TwitterCardSiteUsername { /** * `@username` of website. * * Either {@link TwitterCardSiteUsername} or {@link TwitterCardSiteId} is required. * * Used with `summary`, `summary_large_image`, `app`, `player` cards. * * In other words, same ones as {@link TwitterCardSiteId} plus `app` cards. * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Asite, | Property specs } * * @public */ username: string | null; } /** * See {@link TwitterCardSite} * * @public */ export interface TwitterCardSiteId { /** * Same as {@link TwitterCardSiteUsername}, but the user’s Twitter ID. * * Either {@link TwitterCardSiteUsername} or {@link TwitterCardSiteId} is required. * * Used with `summary`, `summary_large_image`, `player` cards. * * In other words, same ones as {@link TwitterCardSiteUsername} except for `app` cards. * * @remarks * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Asite%3Aid,-Same%20as%20twitter | Property specs (id) } * * - {@link https://twiteridfinder.com/ | Find your Twitter ID} * * @public */ id: string | null; } /** * Manages the {@link TwitterCard.title} metadata * @public */ export declare const provideTwitterCardTitle: () => import("@angular/core").Provider; /** * {@inheritDoc provideTwitterCardTitle} * @deprecated Use {@link provideTwitterCardTitle} instead * @public */ export declare const TWITTER_CARD_TITLE_METADATA_PROVIDER: import("@angular/core").Provider; /** * Provides {@link https://ngx-meta.dev/built-in-modules/twitter-cards/ | Twitter Cards module} * metadata managers. * * Check out {@link provideNgxMetaTwitterCard} for the standalone, recommended API. * * @public */ export declare class NgxMetaTwitterCardModule { static ɵfac: i0.ɵɵFactoryDeclaration<NgxMetaTwitterCardModule, never>; static ɵmod: i0.ɵɵNgModuleDeclaration<NgxMetaTwitterCardModule, never, never, never>; static ɵinj: i0.ɵɵInjectorDeclaration<NgxMetaTwitterCardModule>; } /** * Provides {@link https://ngx-meta.dev/built-in-modules/twitter-cards/ | Twitter Cards module} * metadata managers. * * @remarks * * This is the standalone, recommended API. Using this API is preferred. * However, you may also use {@link NgxMetaTwitterCardModule} as the Angular module-based equivalent API. * * @public */ export declare const provideNgxMetaTwitterCard: () => Provider; /** * {@link https://ngx-meta.dev/built-in-modules/twitter-cards/ | Twitter Cards module} * metadata values that can be set. * * @public */ export interface TwitterCard { /** * The card type. * * Used with all cards. * * If an {@link OpenGraph."type"}, {@link OpenGraph.title} and {@link OpenGraph.description} exist in the markup but * {@link TwitterCard.card} is absent, then a summary card may be rendered. * * Check out {@link TwitterCardType} type for a list of constants you can use * to specify the card's type. * * @remarks * * Provider: * * {@link provideTwitterCardCard} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=twitter%3Acard, | Property specs} */ readonly card?: TwitterCardType | null; /** * {@inheritDoc TwitterCardSite} */ readonly site?: TwitterCardSite | null; /** * {@inheritDoc TwitterCardCreator} */ readonly creator?: TwitterCardCreator | null; /** * Description of content (maximum 200 characters). * * Used with `summary`, `summary_large_image`, `player` cards. * * Equivalent to {@link OpenGraph.description}. This one can be omitted if equivalent is set. * * Can be set with {@link GlobalMetadata.description}. * * @remarks * * Provider: * * {@link provideTwitterCardDescription} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=n/a-,twitter%3Adescription,-Description%20of%20content | Property specs} */ readonly description?: string | null; /** * Title of content (max 70 characters). * * Used with `summary`, `summary_large_image`, `player` cards. * * Equivalent to {@link OpenGraph.title}. This one can be omitted if equivalent is set. * * Can be set with {@link GlobalMetadata.title}. * * Title will be formatted if {@link https://ngx-meta.dev/guides/title-formatting | title formatting} is set up. * * @remarks * * Provider: * * {@link provideTwitterCardTitle} * * See also: * * - {@link https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/markup#:~:text=og%3Adescription-,twitter%3Atitle,-Title%20of%20content | Property specs} */ readonly title?: string | null; /** * {@inheritDoc TwitterCardImage} */ readonly image?: TwitterCardImage | null; } /** * Utility type to provide specific * {@link https://ngx-meta.dev/built-in-modules/twitter-cards/ | Twitter Cards module} * metadata * * @public */ export interface TwitterCardMetadata { twitterCard: TwitterCard; } export {};