import { MediumPublication } from './medium.classes.publication.js'; import * as plugins from './medium.plugins.js'; export interface IPostData { title: string; contentFormat: 'html' | 'markdown'; content: string; canonicalUrl: string; tags: string[]; publishStatus: 'public' | 'draft' | 'unlisted'; } export class MediumPost implements IPostData { // STATIC public static async createPost(mediumPublicationArg: MediumPublication, dataArg: IPostData) { const response = await mediumPublicationArg.mediumAccountRef.request(`/publications/${mediumPublicationArg.id}/posts`, 'POST', dataArg); const post = new MediumPost(mediumPublicationArg, response.body.data); return post; } // INSTANCE mediumPublicationRef: MediumPublication; title: string; contentFormat: 'html' | 'markdown'; content: string; canonicalUrl: string; tags: string[]; publishStatus: 'public' | 'draft' | 'unlisted'; constructor(mediumPublication: MediumPublication, dataArg: IPostData) { } }