import { LangAndText, Locale, UnValidatedLangAndText } from '@mesalvo/ts-definitions';
import { Language } from '../../types';
interface UseTranslationInputProps {
    /**
     * @name array
     * @description array of languages and texts
     * @type {LangAndText[]}
     * @example
     * const array = [
     * { language: 'en', text: 'Hello' },
     * { language: 'fi', text: 'Hei' },
     * ]
     * @default []
     */
    array: UnValidatedLangAndText[];
    /**
     * @name onChange
     * @description onChange function
     * @type {function}
     * @example
     * const onChange = (newArray) => {
     *  console.log(newArray)
     * }
     * @default () => null
     */
    onChange: (newArray: UnValidatedLangAndText[]) => void;
}
/**
 * @name useLangArray
 * @description custom hook for LangArrayInput
 * @param {LangAndText[]} array array of languages and texts
 * @param {function} onChange onChange function
 * @returns {object} unusedCountries, handleCreateNew, deleteThis, getLabel, changeText
 * @example
 * const { unusedCountries, handleCreateNew, deleteThis, getLabel, changeText } =
 *  useLangArray({
 *   array,
 *  onChange,
 * })
 *
 * @author SUS Team
 */
export declare const useTranslationInput: ({ array, onChange }: UseTranslationInputProps) => {
    allLanguages: Language[];
    changeLanguage: (value: Locale, index: number) => void;
    changeText: (value: LangAndText["text"], index: number) => void;
    deleteThis: (index: number) => void;
    getLabel: (language: Language) => string;
    handleCreateNew: (e: {
        preventDefault: () => void;
    }) => void;
    unusedCountries: Language[];
};
export {};
//# sourceMappingURL=use-translation-input.d.ts.map