import { AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, AcessoIntervaloVariavel, TuplaN, Atribuir, AtribuicaoPorIndice, AcessoIndiceVariavel, TipoDe } from '../../../construtos';
import { Interpretador } from '../../interpretador';
import { ParaCada, Retorna } from '../../../declaracoes';
import { RetornoQuebra } from '../../../quebras';
export declare class InterpretadorPitugues extends Interpretador {
    constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function);
    visitarExpressaoAcessoMetodo(expressao: AcessoMetodo): Promise<any>;
    visitarExpressaoAcessoMetodoOuPropriedade(expressao: AcessoMetodoOuPropriedade): Promise<any>;
    visitarExpressaoAcessoPropriedade(expressao: AcessoPropriedade): Promise<any>;
    visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any>;
    visitarExpressaoTuplaN(expressao: TuplaN): Promise<any>;
    visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>;
    visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): Promise<any>;
    visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel): Promise<any>;
    visitarExpressaoTipoDe(expressao: TipoDe): Promise<any>;
    /**
     * Normaliza o valor resolvido para um array iterável.
     * Converte dicionários em listas de Duplas e strings em listas de caracteres.
     */
    private prepararListaParaIteracao;
    /**
     * Resolve a lógica de atribuição das variáveis no escopo.
     * Suporta variáveis simples ou pares (Dupla).
     */
    private definirVariaveisIteracao;
    visitarDeclaracaoParaCada(declaracao: ParaCada): Promise<any>;
    visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>;
}
//# sourceMappingURL=interpretador-pitugues.d.ts.map