import { Action, Button } from '@judo/model-api'; /** * Options for filtering visible buttons. */ export interface GetVisibleButtonsOptions { /** Whether the page is currently in edit mode (has unsaved changes) */ isEditMode?: boolean; } /** * Filter buttons to only show those with matching page actions. * A button is visible if there's a page Action whose actionDefinition * references the same ActionDefinition as the button. * * Additional visibility rules: * - UpdateActionDefinition (Save) and CancelActionDefinition (Cancel) buttons * are only visible when isEditMode=true. * * @param buttons - Array of buttons to filter * @param pageActions - Optional array of page actions to match against * @param options - Optional visibility options * @returns Filtered array of buttons that have matching page actions * * @example * ```typescript * const visibleButtons = getVisibleButtons( * buttonGroup.buttons, * page.actions, * { isEditMode: true } * ); * ``` */ export declare function getVisibleButtons(buttons: Button[], pageActions?: Action[], options?: GetVisibleButtonsOptions): Button[]; //# sourceMappingURL=get-visible-buttons.d.ts.map