import * as Options from '../options'; import { BaseService } from '../infrastructure'; import { Blog, MetaField, MetaFieldUpdateCreate } from '../interfaces'; /** * A service for manipulating a Shopify shop's blogs. For manipulating a blog's posts, use the Articles class instead. */ export declare class Blogs extends BaseService { constructor(shopDomain: string, accessToken: string); /** * Creates a new blog. * @param blog The Blog being created. */ create(blog: Partial): Promise; /** * Gets a blog with the given id. * @param id Id of the blog to retrieve. * @param options Options for filtering the result. */ get(id: number, options?: Options.BlogGetOptions): Promise; /** * Updates the blog with the given id. * @param id Id of the blog being updated. * @param blog The updated blog. */ update(id: number, blog: Partial): Promise; /** * Gets a list of all blogs on the shop. * @param options Options for filtering the results. */ list(options?: Options.BlogListOptions): Promise; /** * Gets a count of all blogs on the shop. */ count(options?: Options.BlogCountOptions): Promise; /** * Deletes the blog with the given id. * @param id Id of the blog being deleted. */ delete(id: number): Promise; /** * Gets a list of up to 250 metafields from the given blog. * @param id The blog's id. * @param options Options for filtering the results. */ listMetafields(blogId: number, options?: Options.MetafieldListOptions): Promise[]>; /** * Returns the number of metafields belonging to the given blog. * @param id The blog's id. */ countMetafields(blogId: number): Promise; /** * Gets the metafield with the given id from an blog. * @param blogId The blog's id. * @param id The metafield's id. */ getMetafield(blogId: number, id: number): Promise>; /** * Creates a metafield for the given blog. * @param blogId The blog's id. * @param id The metafield's id. * @param metafield Options for the metafield */ createMetafield(blogId: number, metafield: Partial): Promise>; /** * Updates a metafield for the given blog * @param blogId The blog's id. * @param id The metafield's id. * @param metafield Options for the metafield */ updateMetafield(blogId: number, id: number, metafield?: Partial): Promise>; /** * Deletes the metafield with the given id from an blog. * @param blogId The blog's id. * @param id The metafield's id. */ deleteMetafield(blogId: number, id: number): Promise; } export default Blogs;