@@ -218,6 +218,36 @@ interface WebflowApi {
218218 * await webflow.enterComponent(heroComponentInstance);
219219 * ```
220220 */
221+ /**
222+ * Open a Component's canvas or a page for editing in the Designer.
223+ * @param target - A Component, ComponentInstance, or page object
224+ * @returns A Promise that resolves when the canvas or page switch is successful.
225+ * @example
226+ * ```ts
227+ * `// Open a Component canvas by ID
228+ * await webflow.openCanvas({ componentId: 'component-id' });
229+ *
230+ * // Open a Component canvas by Component reference
231+ * const components = await webflow.getAllComponents();
232+ * const hero = components[0];
233+ * await webflow.openCanvas(hero);
234+ *
235+ * // Open a Component canvas via an instance reference
236+ * const selectedElement = await webflow.getSelectedElement();
237+ * if (selectedElement?.type === 'ComponentInstance') {
238+ * await webflow.openCanvas(selectedElement as ComponentElement);
239+ * }
240+ *
241+ * // Navigate to a page by ID
242+ * await webflow.openCanvas({ pageId: 'page-id' });
243+ *
244+ * // Navigate to a page by reference (equivalent to webflow.switchPage)
245+ * const pagesAndFolders = await webflow.getAllPagesAndFolders();
246+ * const pages = pagesAndFolders?.filter((i): i is Page => i.type === 'Page');
247+ * await webflow.openCanvas(pages[0]);
248+ * ```
249+ */
250+ openCanvas ( )
221251 enterComponent ( instance : ComponentElement ) : Promise < null > ;
222252 /**
223253 * Return to the broader context of the entire site or page.
0 commit comments