Used for interfaces within components. Allows for multiple interfaces. Interface name. Describes what to do if items are full. Defines the header file of the interface. One or more arguments.