public function getDocument($id, $indexName, $typeName = '')
    {
        $index = $this->getIndex($indexName);
        $type = $index->getType(
            empty($typeName) ? $this->typeName : $typeName
        );

        $data = $this->decorator->denormalizeValue(array($id => $type->getDocument($id)->getData()));

        return $data[$id];
    }