---
layout: docs
title: Facebook\HackCodegen\IHackCodegenConfig
id: interface.Facebook.HackCodegen.IHackCodegenConfig
docid: interface.Facebook.HackCodegen.IHackCodegenConfig
permalink: /docs/reference/interface.Facebook.HackCodegen.IHackCodegenConfig/
---
# Facebook\\HackCodegen\\IHackCodegenConfig




## Interface Synopsis




``` Hack
namespace Facebook\HackCodegen;

interface IHackCodegenConfig {...}
```




### Public Methods




+ [` ->getFileHeader(): ?Traversable<string> `](<interface.Facebook.HackCodegen.IHackCodegenConfig.getFileHeader.md>)
+ [` ->getFormatter(): ?ICodegenFormatter `](<interface.Facebook.HackCodegen.IHackCodegenConfig.getFormatter.md>)
+ [` ->getMaxLineLength(): int `](<interface.Facebook.HackCodegen.IHackCodegenConfig.getMaxLineLength.md>)
+ [` ->getRootDir(): string `](<interface.Facebook.HackCodegen.IHackCodegenConfig.getRootDir.md>)
+ [` ->getSpacesPerIndentation(): int `](<interface.Facebook.HackCodegen.IHackCodegenConfig.getSpacesPerIndentation.md>)
+ [` ->shouldUseTabs(): bool `](<interface.Facebook.HackCodegen.IHackCodegenConfig.shouldUseTabs.md>)