import { QIcon, QSize, QAbstractButtonSignals } from "@nodegui/nodegui";
import { ViewProps } from "../View/RNView";
import { QAbstractButton } from "@nodegui/nodegui";
/**
* The Button component provides ability to add and manipulate native button widgets. It is based on
* [NodeGui's QPushButton](https://docs.nodegui.org/docs/api/generated/classes/QPushButton).
* ## Example
* ```javascript
* import React from "react";
* import { Renderer, Button, Window } from "@nodegui/react-nodegui";
* const App = () => {
* return (
*
*
*
* );
* };
* const buttonStyle = `
* color: white;
* `;
* Renderer.render();
*
* ```
*/
export interface AbstractButtonProps extends ViewProps {
/**
* Alternative method of providing the button text
*/
children?: string;
/**
* Sets the given text to the button. [QPushButton: setText](https://docs.nodegui.org/docs/api/generated/classes/QPushButton#buttonsettexttext)
*/
text?: string;
/**
* Sets an icon in the button. [QPushButton: setIcon](https://docs.nodegui.org/docs/api/generated/classes/QPushButton#buttonseticonicon)
*/
icon?: QIcon;
/**
* Sets an icon size in the button. [QPushButton: setIconSize](https://docs.nodegui.org/docs/api/generated/classes/QPushButton#buttonseticonsize)
*/
iconSize?: QSize;
}
export declare function setAbstractButtonProps(widget: QAbstractButton, newProps: AbstractButtonProps, oldProps: AbstractButtonProps): void;