import { AcessoIndiceVariavel, AcessoMetodoOuPropriedade, Agrupamento, AtribuicaoPorIndice, Atribuir, Binario, Chamada, DefinirValor, Dicionario, FuncaoConstruto, Literal, Logico, TipoDe, Unario, Variavel, Vetor, Leia, AcessoIntervaloVariavel, TuplaN, Morsa, Bote } from '../construtos';
import { Bloco, Classe, Comentario, Const, Escolha, Escreva, Enquanto, Fazer, FuncaoDeclaracao, Importar, Para, Se, Tente, Var, Retorna, Falhar, Expressao, ParaCada, TextoDocumentacao } from '../declaracoes';
import { VisitantePituguesInterface } from '../interfaces/visitante-pitugues-interface';
export declare class FormatadorPitugues implements VisitantePituguesInterface {
    private nívelIndentação;
    private tamanhoIndentação;
    private códigoFormatado;
    private quebraLinha;
    constructor(quebraLinha: string, tamanhoIndentacao?: number);
    private indentar;
    private adicionarLinha;
    private aumentarIndentação;
    private diminuirIndentação;
    visitarDeclaracaoCabecalhoPrograma(): Promise<any>;
    visitarDeclaracaoConstMultiplo(): Promise<any>;
    visitarDeclaracaoEscrevaMesmaLinha(): Promise<any>;
    visitarDeclaracaoInicioAlgoritmo(): Promise<any>;
    visitarDeclaracaoTendoComo(): Promise<any>;
    visitarDeclaracaoVarMultiplo(): Promise<any>;
    visitarExpressaoAcessoElementoMatriz(): Promise<any>;
    visitarExpressaoAcessoMetodo(): Promise<any>;
    visitarExpressaoAcessoPropriedade(): Promise<any>;
    visitarExpressaoArgumentoReferenciaFuncao(): Promise<any>;
    visitarExpressaoAtribuicaoPorIndicesMatriz(): Promise<any>;
    visitarExpressaoComentario(): Promise<any>;
    visitarExpressaoExpressaoRegular(): Promise<any>;
    visitarExpressaoFimPara(): Promise<any>;
    visitarExpressaoFormatacaoEscrita(): Promise<any>;
    visitarExpressaoReferenciaFuncao(): Promise<any>;
    visitarExpressaoSeparador(): Promise<any>;
    visitarExpressaoTupla(): Promise<any>;
    visitarExpressaoTuplaN(expressao: TuplaN): Promise<any>;
    visitarDeclaracaoDeExpressao(declaracao: Expressao): Promise<any>;
    visitarDeclaracaoClasse(declaração: Classe): Promise<any>;
    visitarDeclaracaoDefinicaoFuncao(declaração: FuncaoDeclaracao): Promise<any>;
    visitarDeclaracaoTextoDocumentacao(declaracao: TextoDocumentacao): Promise<any> | void;
    visitarDeclaracaoVar(declaração: Var): Promise<any>;
    visitarDeclaracaoConst(declaração: Const): Promise<any>;
    visitarDeclaracaoSe(declaração: Se): Promise<any>;
    visitarDeclaracaoEnquanto(declaração: Enquanto): Promise<any>;
    visitarDeclaracaoEscolha(declaração: Escolha): Promise<any>;
    visitarDeclaracaoFazer(declaração: Fazer): Promise<any>;
    visitarDeclaracaoParaCada(declaração: ParaCada): Promise<any>;
    visitarDeclaracaoPara(declaração: Para): Promise<any>;
    visitarDeclaracaoTente(declaração: Tente): Promise<any>;
    visitarDeclaracaoEscreva(declaração: Escreva): Promise<any>;
    visitarDeclaracaoImportar(declaração: Importar): Promise<any>;
    visitarDeclaracaoComentario(declaração: Comentario): Promise<any>;
    visitarExpressaoBloco(declaração: Bloco): Promise<any>;
    visitarExpressaoRetornar(declaração: Retorna): Promise<any>;
    visitarExpressaoContinua(): any;
    visitarExpressaoSustar(): any;
    visitarExpressaoFalhar(expressão: Falhar): Promise<any>;
    visitarExpressaoDeAtribuicao(expressão: Atribuir): Promise<any>;
    visitarExpressaoBinaria(expressão: Binario): Promise<any>;
    visitarExpressaoLogica(expressão: Logico): Promise<any>;
    visitarExpressaoLiteral(expressão: Literal): Promise<any>;
    visitarExpressaoDeVariavel(expressão: Variavel): Promise<any>;
    visitarExpressaoAgrupamento(expressão: Agrupamento): Promise<any>;
    visitarExpressaoUnaria(expressão: Unario): Promise<any>;
    visitarExpressaoDeChamada(expressão: Chamada): Promise<any>;
    visitarExpressaoIsto(): Promise<any>;
    visitarExpressaoSuper(): Promise<any>;
    visitarExpressaoVetor(expressão: Vetor): Promise<any>;
    visitarExpressaoDicionario(expressão: Dicionario): Promise<any>;
    visitarExpressaoAcessoIndiceVariavel(expressão: AcessoIndiceVariavel): Promise<any>;
    visitarExpressaoAtribuicaoPorIndice(expressão: AtribuicaoPorIndice): Promise<any>;
    visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any>;
    visitarExpressaoAcessoMetodoOuPropriedade(expressão: AcessoMetodoOuPropriedade): Promise<any>;
    visitarExpressaoDefinirValor(expressão: DefinirValor): Promise<any>;
    visitarExpressaoFuncaoConstruto(expressão: FuncaoConstruto): Promise<any>;
    visitarExpressaoLeia(expressão: Leia): Promise<any>;
    visitarExpressaoTipoDe(expressão: TipoDe): Promise<any>;
    visitarExpressaoMorsa(expressao: Morsa): Promise<any>;
    visitarExpressaoBote(expressao: Bote): Promise<any>;
    private mapearOperador;
    formatar(declarações: any[]): Promise<string>;
}
//# sourceMappingURL=formatador-pitugues.d.ts.map