import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, Agrupamento, Atribuir, Binario, Chamada, Constante, DefinirValor, FimPara, FuncaoConstruto, Leia, Literal, Logico, Unario, Variavel, Vetor } from '@designliquido/delegua/construtos'; import { Bloco, Classe, Const, ConstMultiplo, Declaracao, Enquanto, Escreva, EscrevaMesmaLinha, Escolha, Expressao, FuncaoDeclaracao, Para, ParaCada, Retorna, Se, Var } from '@designliquido/delegua/declaracoes'; import { ConstrutoInterface, SimboloInterface, TradutorInterface } from '@designliquido/delegua/interfaces'; import { AliasTipo, ParaEmGere, ParaGere, ReatribuicaoVariavel } from '../declaracoes'; /** * Tradutor Reverso de Potigol para Delégua. * Recebe a árvore sintática gerada pelo `AvaliadorSintaticoPotigol` * e produz código-fonte equivalente em Delégua. */ export declare class TradutorReversoPotigol implements TradutorInterface { indentacao: number; traduzirSimboloOperador(operador: SimboloInterface): string; traduzirConstrutoAgrupamento(agrupamento: Agrupamento): string; traduzirConstrutoAtribuir(atribuir: Atribuir): string; traduzirConstrutoBinario(binario: Binario): string; traduzirConstrutoChamada(chamada: Chamada): string; traduzirConstrutoDefinirValor(definirValor: DefinirValor): string; traduzirConstrutoFimPara(fimPara: FimPara): string; traduzirConstrutoLiteral(literal: Literal): string; traduzirConstrutoLogico(logico: Logico): string; traduzirConstrutoUnario(unario: Unario): string; traduzirConstrutoVariavel(variavel: Variavel, argumentos?: ConstrutoInterface[]): string; traduzirConstrutoConstante(constante: Constante, argumentos?: ConstrutoInterface[]): string; traduzirConstrutoAcessoMetodoOuPropriedade(acesso: AcessoMetodoOuPropriedade, argumentos?: ConstrutoInterface[]): string; /** * Traduz métodos específicos de Potigol para equivalentes em Delégua. * Retorna `null` se não houver mapeamento direto. */ protected traduzirMetodoPotigol(nomeMetodo: string, objeto: string, argumentos: ConstrutoInterface[]): string | null; traduzirConstrutoAcessoIndiceVariavel(acesso: AcessoIndiceVariavel): string; traduzirFuncaoConstruto(funcao: FuncaoConstruto): string; traduzirConstrutoLeia(leia: Leia): string; traduzirConstrutoVetor(vetor: Vetor): string; protected logicaComumBlocoEscopo(declaracoes: Declaracao[]): string; traduzirDeclaracaoBloco(bloco: Bloco): string; traduzirDeclaracaoConst(declaracaoConst: Const): string; traduzirDeclaracaoConstMultiplo(constMultiplo: ConstMultiplo): string; traduzirDeclaracaoVar(declaracaoVar: Var): string; traduzirDeclaracaoReatribuicaoVariavel(reatribuicao: ReatribuicaoVariavel): string; traduzirDeclaracaoEscreva(escreva: Escreva): string; traduzirDeclaracaoEscrevaMesmaLinha(escreva: EscrevaMesmaLinha): string; traduzirDeclaracaoExpressao(expressao: Expressao): string; traduzirDeclaracaoFuncao(declaracaoFuncao: FuncaoDeclaracao): string; traduzirDeclaracaoSe(declaracaoSe: Se): string; traduzirDeclaracaoEnquanto(declaracaoEnquanto: Enquanto): string; traduzirDeclaracaoPara(para: Para): string; traduzirDeclaracaoParaGere(paraGere: ParaGere): string; traduzirDeclaracaoParaEmGere(paraEmGere: ParaEmGere): string; traduzirDeclaracaoParaCada(paraCada: ParaCada): string; traduzirDeclaracaoEscolha(escolha: Escolha): string; traduzirDeclaracaoRetorna(retorna: Retorna): string; traduzirDeclaracaoClasse(classe: Classe): string; traduzirDeclaracaoAliasTipo(alias: AliasTipo): string; dicionarioConstrutos: { [nome: string]: Function; }; dicionarioDeclaracoes: { [nome: string]: Function; }; traduzir(declaracoes: Declaracao[]): string; } //# sourceMappingURL=tradutor-reverso-potigol.d.ts.map