import TinyHtmlInput from '../../TinyHtmlInput.mjs';
/**
* TinyHtmlSubmitInput is a helper class for managing
* elements with validation and attribute/property handling.
*
* @example
* const submitBtn = new TinyHtmlSubmitInput({
* value: 'Send',
* formaction: '/submit',
* formenctype: 'multipart/form-data',
* formmethod: 'post',
* formnovalidate: true,
* formtarget: '_blank'
* });
*/
declare class TinyHtmlSubmitInput extends TinyHtmlInput {
/**
* Creates a new TinyHtmlSubmitInput instance.
* @param {Object} config - Configuration object.
* @param {string} [config.value] - Initial value (button label).
* @param {string} [config.name] - Name of the input control.
* @param {string} [config.placeholder] - Placeholder text (not common for submit inputs).
* @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} [config.formenctype] - Form encoding type.
* @param {'get'|'post'|'dialog'} [config.formmethod] - Submission method.
* @param {boolean} [config.formnovalidate=false] - Whether to bypass form validation.
* @param {'_self'|'_blank'|'_parent'|'_top'|string} [config.formtarget] - Target browsing context for submission.
* @param {string} [config.formaction] - URL to which the form is submitted.
* @param {boolean} [config.readonly=false] - Whether the input is read-only.
* @param {boolean} [config.required=false] - Whether the input is required.
* @param {string|string[]|Set} [config.tags=[]] - Initial CSS classes.
* @param {string} [config.mainClass=''] - Main CSS class.
* @throws {TypeError} If any attribute is of the wrong type.
*/
constructor({ formenctype, formmethod, formnovalidate, formtarget, formaction, readonly, required, value, tags, name, placeholder, mainClass, }?: {
value?: string;
name?: string;
placeholder?: string;
formenctype?: 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain';
formmethod?: 'get' | 'post' | 'dialog';
formnovalidate?: boolean;
formtarget?: '_self' | '_blank' | '_parent' | '_top' | string;
formaction?: string;
readonly?: boolean;
required?: boolean;
tags?: string | string[] | Set;
mainClass?: string;
});
/** @param {string} value */
set value(value: string);
/** @returns {string|null} */
get value(): string | null;
/** @param {string} formaction */
set formaction(formaction: string);
/** @returns {string|null} */
get formaction(): string | null;
/** @param {'application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'} formenctype */
set formenctype(formenctype: 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/plain');
/** @returns {string|null} */
get formenctype(): string | null;
/** @param {'get'|'post'|'dialog'} formmethod */
set formmethod(formmethod: 'get' | 'post' | 'dialog');
/** @returns {string|null} */
get formmethod(): string | null;
/** @param {boolean} formnovalidate */
set formnovalidate(formnovalidate: boolean);
/** @returns {boolean} */
get formnovalidate(): boolean;
/** @param {string} formtarget */
set formtarget(formtarget: string);
/** @returns {string|null} */
get formtarget(): string | null;
}
export default TinyHtmlSubmitInput;
//# sourceMappingURL=TinyHtmlSubmitInput.d.mts.map