import * as Options from '../options'; import { BaseService } from '../infrastructure'; import { Page, MetaField, MetaFieldUpdateCreate } from '../interfaces'; /** * A service for manipulating Shopify pages. */ export declare class Pages extends BaseService { constructor(shopDomain: string, accessToken: string); /** * Creates a new page. * @param page The page being created. */ create(page: Partial): Promise; /** * Retrieves a single page by its ID. * @param id Id of the page to retrieve. * @param options Options for filtering the result. */ get(id: number, options?: Options.PageGetOptions): Promise>; /** * Updates a page with the given id. * @param id Id of the page being updated. * @param page The updated page. */ update(id: number, page: Partial): Promise; /** * Retrieve a list of all pages. * @param options Options for filtering the results. */ list(options?: Options.PageListOptions): Promise[]>; /** * Retrieves a page count. */ count(options?: Options.PageCountOptions): Promise; /** * Deletes a page with the given id. * @param id Id of the page being deleted. */ delete(id: number): Promise; /** * Gets a list of up to 250 metafields from the given page. * @param id The page's id. * @param options Options for filtering the results. */ listMetafields(pageId: number, options?: Options.MetafieldListOptions): Promise[]>; /** * Returns the number of metafields belonging to the given page. * @param id The page's id. */ countMetafields(pageId: number): Promise; /** * Gets the metafield with the given id from an page. * @param pageId The page's id. * @param id The metafield's id. */ getMetafield(pageId: number, id: number): Promise>; /** * Creates a metafield for the given page. * @param pageId The page's id. * @param id The metafield's id. * @param metafield Options for the metafield */ createMetafield(pageId: number, metafield: Partial): Promise>; /** * Updates a metafield for the given page * @param pageId The page's id. * @param id The metafield's id. * @param metafield Options for the metafield */ updateMetafield(pageId: number, id: number, metafield?: Partial): Promise>; /** * Deletes the metafield with the given id from an page. * @param pageId The page's id. * @param id The metafield's id. */ deleteMetafield(pageId: number, id: number): Promise; } export default Page;