hphp/hack/manual/apis/Classes/HH/Shapes/index.md
:::info[Note] This is a point-in-time snapshot of the API documentation from January 2026. Going forward, we will not be maintaining a public copy of these references, and recommend users to refer to the built-in signature helpers available in the Hack LSP instead for complete and up-to-date information. :::
namespace HH;
abstract final class Shapes {...}
::at(shape() $shape, arraykey $index)::idx(shape(...) $shape, arraykey $index, mixed $default = NULL)Shapes::idx to retrieve a field value in a shape, when the key may or may not exist::keyExists(shape() $shape, arraykey $index): bool::removeKey<T as shape()>(inout darray $shape, arraykey $index): void::toArray(shape() $shape): darray<arraykey, mixed>::toDict(shape() $shape): dict<arraykey, mixed>