@botonic/plugin-contentful
Version:
Botonic Plugin Contentful is one of the **[available](https://github.com/hubtype/botonic/tree/master/packages)** plugins for Botonic. **[Contentful](http://www.contentful.com)** is a CMS (Content Management System) which manages contents of a great variet
60 lines (59 loc) • 3.22 kB
TypeScript
import * as contentful from 'contentful';
import * as cms from '../cms';
import { Asset, CommonFields, Content, ContentType, Context, DateRangeContent, ScheduleContent, TopContent, TopContentType } from '../cms';
import { ContentfulOptions } from '../plugin';
import { SearchCandidate } from '../search';
export declare class Contentful implements cms.CMS {
private readonly _delivery;
private readonly _contents;
private readonly _carousel;
private readonly _document;
private readonly _text;
private readonly _startUp;
private readonly _url;
private readonly _payload;
private readonly _keywords;
private readonly _schedule;
private readonly _dateRange;
private readonly _image;
private readonly _video;
private readonly _handoff;
private readonly _input;
private readonly _custom;
private readonly _asset;
private readonly _queue;
private readonly _button;
/**
*
* See https://www.contentful.com/developers/docs/references/content-delivery-api/#/introduction/api-rate-limits
* for API rate limits
*
* https://www.contentful.com/developers/docs/javascript/tutorials/using-js-cda-sdk/
*/
constructor(options: ContentfulOptions);
button(id: string, context?: Context): Promise<cms.Button>;
element(id: string, context?: Context): Promise<cms.Element>;
carousel(id: string, context?: cms.Context): Promise<cms.Carousel>;
document(id: string, context?: cms.Context): Promise<cms.Document>;
text(id: string, context?: cms.Context): Promise<cms.Text>;
startUp(id: string, context?: cms.Context): Promise<cms.StartUp>;
url(id: string, context?: cms.Context): Promise<cms.Url>;
payload(id: string, context?: cms.Context): Promise<cms.Payload>;
queue(id: string, context?: cms.Context): Promise<cms.Queue>;
image(id: string, context?: cms.Context): Promise<cms.Image>;
video(id: string, context?: cms.Context): Promise<cms.Video>;
chitchat(id: string, context?: cms.Context): Promise<cms.Chitchat>;
handoff(id: string, context?: cms.Context): Promise<cms.Handoff>;
input(id: string, context?: cms.Context): Promise<cms.Input>;
custom(id: string, context?: cms.Context): Promise<cms.Custom>;
topContents<T extends TopContent>(model: TopContentType, context?: cms.Context, filter?: (cf: CommonFields) => boolean, paging?: cms.PagingOptions): Promise<T[]>;
content(id: string, context?: cms.Context, referencesToInclude?: number): Promise<Content>;
contents<T extends Content>(contentType: ContentType, context?: cms.Context, paging?: cms.PagingOptions): Promise<T[]>;
topContentFromEntry<T extends TopContent>(entry: contentful.Entry<any>, context: Context): Promise<T>;
contentFromEntry<T extends Content>(entry: contentful.Entry<any>, context: Context): Promise<T>;
contentsWithKeywords(context?: cms.Context, paging?: cms.PagingOptions): Promise<SearchCandidate[]>;
schedule(id: string, context: Context): Promise<ScheduleContent>;
asset(id: string, context?: cms.Context): Promise<cms.Asset>;
assets(context?: cms.Context): Promise<Asset[]>;
dateRange(id: string, context: Context): Promise<DateRangeContent>;
}