#pragma once

#include "PdfObject.h"

class PdfPageTree;
class PdfOutlineCollection;

class PdfDocumentCatalog : public PdfObject
{
public:

    PdfDocumentCatalog();

    unsigned IndexObjects(unsigned count) override;

    std::string ToString(PdfXRefTable* xRefTable) override;

private:
    void UpdateDictionary() override;

    std::unique_ptr<PdfOutlineCollection> mOutlines;
    std::unique_ptr<PdfPageTree> mPages;
};
