# StyleBase

Roblox Engine API class from Roblox Studio 0.744.0.7441077 (version-7aaa6838d36c4448).

- Inherits from, nearest first: [Instance](https://rapi.sleaze.dev/classes/Instance.md), [Object](https://rapi.sleaze.dev/classes/Object.md)
- Subclasses: [StyleRule](https://rapi.sleaze.dev/classes/StyleRule.md), [StyleSheet](https://rapi.sleaze.dev/classes/StyleSheet.md)
- Tags: Not creatable
- Memory category: Gui
- HTML page: https://rapi.sleaze.dev/classes/StyleBase/
- Roblox documentation: https://create.roblox.com/docs/reference/engine/classes/StyleBase

The base class for [`StyleSheet`](https://rapi.sleaze.dev/classes/StyleSheet.md) and [`StyleRule`](https://rapi.sleaze.dev/classes/StyleRule.md).

## Methods

### GetStyleRules

```luau
StyleBase:GetStyleRules(): { Instance }
```

- Tags: Capabilities: UI

Returns an array of associated `StyleRules`.

Returns: Array of `StyleRules`.

### InsertStyleRule

```luau
StyleBase:InsertStyleRule(rule: StyleRule, priority: number?)
```

- Tags: Capabilities: UI

Inserts a new [`StyleRule`](https://rapi.sleaze.dev/classes/StyleRule.md) into the array of rules.

Parameters:

- `rule`: The [`StyleRule`](https://rapi.sleaze.dev/classes/StyleRule.md) to insert.
- `priority`: The number to set the rule's `Priority` to.

### SetStyleRules

```luau
StyleBase:SetStyleRules(rules: { Instance })
```

- Tags: Capabilities: UI

Similar to [`InsertStyleRule()`](https://rapi.sleaze.dev/classes/StyleBase.md) but lets you declare and set multiple `StyleRules` at once.

Parameters:

- `rules`: Array of `StyleRules` to set.

## Events

### StyleRulesChanged

```luau
StyleBase.StyleRulesChanged: RBXScriptSignal<()>
```

- Tags: Capabilities: UI

Fires when one or more `StyleRules` is explicitly changed on the connected [`StyleSheet`](https://rapi.sleaze.dev/classes/StyleSheet.md) or [`StyleRule`](https://rapi.sleaze.dev/classes/StyleRule.md).

## Inherited members

- From [Instance](https://rapi.sleaze.dev/classes/Instance.md): `Archivable`, `archivable`, `Attributes`, `AttributesReplicate`, `AttributesSerialize`, `HistoryId`, `Name`, `Parent`, `PredictionMode`, `PropertyStatusStudio`, `RobloxLocked`, `SerializedOverrides`, `SourceAssetId`, `Tags`, `UniqueId`, `numExpectedDirectChildren`, `DataCost`, `Capabilities`, `DefinesCapabilities`, `IsInSandbox`, `Sandboxed`, `AddTag`, `ClearAllChildren`, `Clone`, `Destroy`, `FindFirstAncestor`, `FindFirstAncestorOfClass`, `FindFirstAncestorWhichIsA`, `FindFirstChild`, `FindFirstChildOfClass`, `FindFirstChildWhichIsA`, `FindFirstDescendant`, `GetActor`, `GetAttribute`, `GetAttributeChangedSignal`, `GetAttributes`, `GetChildren`, `GetDebugId`, `GetDescendants`, `GetFullName`, `GetStyled`, `GetStyledPropertyChangedSignal`, `GetTags`, `HasTag`, `IsAncestorOf`, `IsDescendantOf`, `IsPropertyModified`, `QueryDescendants`, `RemoveTag`, `ResetPropertyToDefault`, `SetAttribute`, `WaitForChild`, `Remove`, `children`, `clone`, `destroy`, `findFirstChild`, `getChildren`, `isDescendantOf`, `remove`, `AncestryChanged`, `AttributeChanged`, `ChildAdded`, `ChildRemoved`, `DescendantAdded`, `DescendantRemoving`, `Destroying`, `StyledPropertiesChanged`, `childAdded`
- From [Object](https://rapi.sleaze.dev/classes/Object.md): `ClassName`, `className`, `GetPropertyChangedSignal`, `IsA`, `isA`, `Changed`
