libtmux Reference MCP Search
On this page

TypeScript API reference

878 symbols, extracted from source. Every type name in a signature links to its own entry; every cross-reference in a doc comment resolves against the same table.

By module 18 modules

  • builder 11
  • client 2
  • common 28
  • config 14
  • constants 5
  • engine 6
  • exc 24
  • field_types 13
  • operation_options 8
  • ownership 4
  • pane 3
  • planning 13
  • selection 21
  • server 6
  • session 3
  • types 65
  • window 5
  • Types 3
Server 2 types
Session 2 types
Window 3 types
Pane 2 types
Client 2 types
Versions 1 type
Commands 1 type
Formats 1 type
Queries 1 type
Snapshots 1 type
Workspaces — Plans 11 types
Errors 17 types
Errors — Server 1 type
Constants and enums 31 types
CommandOptions 3 members CommandResult 4 members SnapshotOptions 1 members

Options for Server.snapshot .

SplitOptions 6 members SendKeysOptions 2 members CmdOptions 1 members

Options for Server.cmd and the handle-level cmd.

JoinOptions 1 members

Options for joining a pane into another window.

SetOptionOptions 1 members

Options for writing a tmux option.

CaptureOptions 5 members SetHookOptions 1 members ResizeOptions 4 members RunShellOptions 1 members IfShellOptions 3 members RespawnOptions 3 members PopupOptions 4 members ChooseTreeOptions 2 members SetEnvironmentOptions 2 members

Options for writing a tmux environment variable.

TmuxOutputEvent 4 members

A pane produced output.

TmuxSubscriptionEvent 7 members

A subscribed format expanded to a new value.

TmuxLayoutChangeEvent 5 members

A window's layout changed.

TmuxPasteBufferEvent 2 members

A paste buffer was written or deleted.

TmuxMessageEvent 2 members

tmux reported a message, or an error in its configuration.

TmuxExitEvent 2 members

The control-mode connection is ending.

TmuxUnknownEvent 3 members

A notification this version of the package does not model.

TmuxReconnectedEvent 2 members

The connection dropped and was reopened.

TmuxReconnectingEvent 2 members

The connection dropped and a replacement is being opened.

ConnectionOptions 4 members

Options shared by connected servers and event observers.

WaitForOptions 2 members

Timing for a whole-server state wait.

WatchOptions 2 members

Options for Server.watch , a notification-only observer.

ApplyWorkspaceOptions 2 members

How applyWorkspace should treat a workspace that is already running.

PlanWorkspaceOptions 1 members

Structural planning options; pane command delivery is apply-only.

Constants and enums — Server 1 type
Constants and enums — Session 5 types
Constants and enums — Window 6 types
Constants and enums — Pane 2 types
Constants and enums — Client 1 type
Other 8 types
Functions and constants 0 types
applyWindow ( window : : Window , desired : : WorkspaceWindow , workspace : : Workspace , context : : ApplyWindowContext ) Promise<void>
functionasync [source]
functionasync [source]
applyWindow
applyWorkspace ( server : : Server , workspaceInput : : WorkspaceInput , options : : ApplyWorkspaceOptions = {} ) Promise<Session>
functionasync [source]
functionasync [source]
applyWorkspace

Build a workspace into a real tmux session, or reconcile one that exists.

tmux gives every new session a window and every new window a pane, so the first window and first pane of each level are adopted rather than created. Creating them anyway is the classic workspace-builder bug that leaves an empty leading window behind.

What this reconciles is *topology*: which windows exist, in what order, under what names, with how many panes, under which layout. It is safe to apply twice and the second run does not duplicate anything. It is deliberately not a process supervisor — see CommandPolicy — and it does not unset options a previous version of the file had set, because tmux cannot say which of an option's current values this file is responsible for.

Raises
  • ZodErrorwhen the workspace does not satisfy the strict config schema.

  • TypeErrorwhen the operation options are invalid.

  • WorkspaceApplyErrorwhen tmux fails after applying may have started.

asCommands ( value : : string | readonly string[] | undefined ) readonly string[]
function [source]
function [source]
asCommands
assertOptionBag ( value : : unknown , method : : string ) asserts value is object
function [source]
function [source]
assertOptionBag
claimSession ( session : : Session , name : : string ) Promise<void>
functionasync [source]
functionasync [source]
claimSession

Claim a session this apply created.

commandPolicy ( value : : unknown ) CommandPolicy
function [source]
function [source]
commandPolicy
createSession ( server : : Server , workspace : : Workspace ) Promise<Session>
functionasync [source]
functionasync [source]
createSession
dataArrayValues ( value : : object ) readonly unknown[] | null
function [source]
function [source]
dataArrayValues
decodeWhereDocument ( input : : unknown ) WhereDocumentV1
function [source]
function [source]
decodeWhereDocument

Validate a WHERE document and restore camelCase criteria names.

The returned document is canonical and deeply frozen.

Examples

import { decodeWhereDocument } from "libtmux/selection";
const document = decodeWhereDocument(
  JSON.parse('{"model":"pane","version":1,"where":{"pane_title":"logs"}}'),
);
if (document.model === "pane") snapshot.panes.where(document.where);
Raises
encodeWhereDocument ( document : : WhereDocumentV1 ) string
function [source]
function [source]
encodeWhereDocument

Serialize a WHERE document as canonical JSON.

Field names and values use tmux's stable wire spellings. The input is validated without invoking accessors or conversion hooks.

Examples

import { encodeWhereDocument } from "libtmux";
const encoded = encodeWhereDocument({
  model: "pane",
  version: 1,
  where: { title: { contains: "log" } },
});
Raises
focusRequested ( session : : Session , workspace : : Workspace ) Promise<void>
functionasync [source]
functionasync [source]
focusRequested
formatDataValue ( value : : unknown , active : : Set<object> , depth = 0 ) string
function [source]
function [source]
formatDataValue
formatQuery ( query : : Query ) string
function [source]
function [source]
formatQuery
freezeEntries ( entries : : readonly Entry[] ) readonly Readonly<Entry>[]
function [source]
function [source]
freezeEntries
initialPaneStartDirectory ( workspace : : Workspace ) string | undefined
function [source]
function [source]
initialPaneStartDirectory

The directory tmux needs when it creates the session's first pane.

inThisSession ( window : : Window , options : : MoveWindowOptions ) MoveWindowOptions
function [source]
function [source]
inThisSession

Fill in the destination session the caller left out.

tmux reads a destination of :3 as index 3 of the *current* session, which is whichever one it happens to consider current — not this window's. Naming the window's own is what makes "the window stays in its own session when omitted" true, and it is the only reading under which omitting the session is a smaller request rather than a different one.

isSafeInteger ( value : : unknown ) value is SafeInteger
function [source]
function [source]
isSafeInteger

Test whether a value is an exact JavaScript integer.

Examples

import { isSafeInteger } from "libtmux";
const value: unknown = 3;
if (isSafeInteger(value)) snapshot.sessions.where({ attached: value });
isSplitSize ( value : : unknown ) value is SplitSize
function [source]
function [source]
isSplitSize

Test whether a value is valid tmux split geometry.

Examples

import { isSplitSize } from "libtmux";
const value: unknown = "30%";
const size = isSplitSize(value) ? value : undefined;
isTmuxName ( value : : unknown ) value is string
function [source]
function [source]
isTmuxName

Test whether a value is a name every supported tmux stores unchanged.

The refusal the mutating calls apply, offered ahead of them so a caller validating configuration can report the bad field rather than catching a TypeError from the call it fed.

Examples

import { isTmuxName } from "libtmux";
const value: unknown = "work";
const name = isTmuxName(value) ? value : undefined;
mayPrune ( policy : : PrunePolicy , owned : : boolean ) boolean
function [source]
function [source]
mayPrune

Whether surplus topology may be removed.

owned is the default because it is the only one that is safe without knowing where the session came from: a workspace prunes what it built and leaves alone what it merely found. always authorizes pruning for one operation; it does not stamp or otherwise adopt the session.

normalizeApplyWorkspaceOptions ( options : : ApplyWorkspaceOptions ) { readonly commands: CommandPolicy; readonly prune: PrunePolicy; }
function [source]
function [source]
normalizeApplyWorkspaceOptions

Validate and snapshot apply options before server access.

normalizePlanWorkspaceOptions ( options : : PlanWorkspaceOptions ) PrunePolicy
function [source]
function [source]
normalizePlanWorkspaceOptions

Validate and snapshot planning options before server access.

optionValue ( value : : WorkspaceOptionValue ) string
function [source]
function [source]
optionValue

Convert a YAML scalar to the string tmux accepts for an option value.

ownedByWorkspace ( session : : Session , name : : string ) Promise<boolean>
functionasync [source]
functionasync [source]
ownedByWorkspace

Whether this session carries the mark for name.

paneCommands ( pane : : WorkspacePane , window : : WorkspaceWindow ) readonly string[]
function [source]
function [source]
paneCommands

Normalize a pane entry to the commands it should run, in order.

A window's shell_command_before runs in every one of its panes, ahead of that pane's own commands, which is how tmuxp seeds a common environment.

paneStartDirectory ( pane : : WorkspacePane , window : : WorkspaceWindow , workspace : : Workspace ) string | undefined
function [source]
function [source]
paneStartDirectory

A pane's start directory, falling back to its window's and then the session's.

paneWantsFocus ( pane : : WorkspacePane ) boolean
function [source]
function [source]
paneWantsFocus

Whether a pane entry asked to be the focused one.

parseLegacyWhere ( model : : Model , input : : unknown ) Extract<WhereDocumentV1, { readonly model: Model }>
function [source]
function [source]
parseLegacyWhere

Convert the Python port's name__contains spelling to canonical criteria.

Accepts one own data property on a plain object and never invokes accessors or conversion hooks. The returned document and its criteria are frozen.

Examples

import { parseLegacyWhere } from "libtmux";
const document = parseLegacyWhere("window", { name__contains: "log" });
snapshot.windows.where(document.where);
Raises
  • QueryValidationErrorwhen the model is not session or window, or the input is not exactly one string-valued name__contains property.

parseWorkspace ( value : : unknown ) Workspace
function [source]
function [source]
parseWorkspace

Validate a parsed workspace, rejecting anything the schema does not allow.

parseWorkspaceYaml ( source : : string ) Workspace
function [source]
function [source]
parseWorkspaceYaml

Parse a YAML or JSON workspace, then validate it.

YAML parsing is Bun's, and this package otherwise runs anywhere — so this is the one function that does not. Reached from Node it says so, rather than failing on an undefined global; parse the document yourself and hand the result to parseWorkspace .

placementTarget ( window : : Window ) string
function [source]
function [source]
placementTarget

This placement, as tmux addresses one.

A window linked into two sessions is one window with two placements sharing an id, and a bare @id leaves tmux to choose between them — which it does consistently, and consistently without regard for which placement the handle came from. Qualifying with the session is what makes an operation act on the placement it was reached through.

Only the operations that address a placement take this. kill , rename , selectLayout and resize act on the window itself, wherever it is linked, and naming a session there would suggest a choice that does not exist.

planWorkspace ( server : : Server , workspaceInput : : WorkspaceInput , options : : PlanWorkspaceOptions = {} ) Promise<WorkspacePlan>
functionasync [source]
functionasync [source]
planWorkspace

Plan session, window, and pane membership without changing tmux.

Reads the server once and answers from that capture, so it costs one snapshot and changes nothing. It reports structural creation, removal, retention, and window renames. It does not predict options, layouts, focus, or pane command effects.

Examples

const plan = await planWorkspace(server, workspace);
if (plan.removesWindows.length > 0) console.log("would remove", plan.removesWindows);
Raises
  • ZodErrorwhen the workspace does not satisfy the strict config schema.

  • TypeErrorwhen planning options are invalid.

planWorkspace ( server : : Server , workspace : : Workspace , prune : : PrunePolicy ) Promise<WorkspacePlan>
functionasync [source]
functionasync [source]
planWorkspace
prunePolicy ( value : : unknown ) PrunePolicy
function [source]
function [source]
prunePolicy
pruneWindows ( session : : Session , wanted : : number ) Promise<Session>
functionasync [source]
functionasync [source]
pruneWindows
refuseWithoutLocalTmux ( runtime : : RuntimeContext , method : : string ) void
function [source]
function [source]
refuseWithoutLocalTmux

Refuse a call that can only reach a tmux this process can spawn.

Control mode is a tmux -C attach child of this process. An engine exists because tmux is somewhere this process cannot spawn it, so spawning anyway would attach to whatever local tmux happens to be there — and every command afterwards would succeed against the wrong server.

runningSession ( server : : Server , name : : string ) Promise<Session | undefined>
functionasync [source]
functionasync [source]
runningSession

The session this workspace names, on a server that may not be running yet.

Acquisition raises on an unreachable server rather than reading as empty, which is the answer a caller asking what is there needs. Building from nothing is the ordinary starting point here, though, and a socket with no daemon behind it is holding this session in the way an empty server is: not at all.

safeInteger ( value : : number ) SafeInteger
function [source]
function [source]
safeInteger

Authenticate an exact JavaScript integer or throw.

Examples

import { safeInteger } from "libtmux";
const pid = safeInteger(42);
Raises
serverAddress ( runtime : : RuntimeContext ) string | undefined
function [source]
function [source]
serverAddress

Which tmux this runtime addresses, or undefined when that is unknowable.

An engine's socket is a path on a machine this process cannot see, so the socket alone does not name the daemon. Unknowable rather than guessed: an engine that declares no endpoint is the one case where answering would mean inventing the fact the comparison turns on.

socketAddress ( connection : : TmuxConnection ) string
function [source]
function [source]
socketAddress

How a connection addresses its daemon, as one comparable string.

An absolute socket path names the daemon outright. A name does not: it is resolved against TMUX_TMPDIR (then the default tmpdir) and a per-user directory, so the tmpdir in force is part of the address. tmux's own default name is default, which is why an unnamed connection is not a third case.

sortedDataEntries ( value : : object ) readonly (readonly [string, unknown])[] | null
function [source]
function [source]
sortedDataEntries
splitSize ( value : : number | string ) SplitSize
function [source]
function [source]
splitSize
windowAt ( session : : Session , index : : number , desired : : WorkspaceWindow , workspace : : Workspace ) Promise<{ readonly created: boolean; readonly window: Window }>
functionasync [source]
functionasync [source]
windowAt

The window that should hold position index, created if it is not there yet.

tmux window indexes are not positions — base-index shifts them and a killed window leaves a gap — so position is resolved by ordinal, not by index.

windowIsShared ( window : : Window ) boolean
function [source]
function [source]
windowIsShared
windowStartDirectory ( window : : WorkspaceWindow , workspace : : Workspace ) string | undefined
function [source]
function [source]
windowStartDirectory

A window's directory, inherited from its workspace when it has none.

workspaceWindowPlacement ( window : : Window , position : : number ) WorkspaceWindowPlacement
function [source]
function [source]
workspaceWindowPlacement
AliasedFields
typealias [source]
typealias [source]
AliasedFields

Idiomatic property names layered over a row, carrying decoded values.

ClientAliasMap
typealias [source]
typealias [source]
ClientAliasMap
ClientRow
typealias [source]
typealias [source]
ClientRow
CommandPolicy
typealias [source]
typealias [source]
CommandPolicy

When a pane's shell_command entries are sent to it.

create-only, the default, sends them only to panes this apply created. always sends them to every pane on every apply.

ConnectionAlias
typealias [source]
typealias [source]
ConnectionAlias
ConnectOptions
typealias [source]
typealias [source]
ConnectOptions

Options for Server.connect .

DaemonEpoch
typealias [source]
typealias [source]
DaemonEpoch
DaemonGuard
typealias [source]
typealias [source]
DaemonGuard

Making a command refuse to run on a daemon that is not the one it was read from.

A tmux id is unique within one daemon and reissued by the next: kill-server and a restart give a new daemon the same socket, and it numbers its panes from %0 again. A handle captured before the restart therefore names something that exists, belongs to somebody else, and answers to the same command.

Checking first and sending second does not close that: the daemon can change between the two. if-shell -F does, because it is not a shell — tmux expands the format inside its command queue and cmdq_insert_afters the guarded command into the same queue, so nothing runs in between. The condition is pid and start_time together, since pids are reused.

The refusal has to be visible. tmux answers a false condition with no output and status 0, which is indistinguishable from a command that printed nothing, so the else branch is a freshly named unknown command. A 128-bit suffix makes matching a pre-existing command alias a guess, and the exact diagnostic distinguishes the refusal from the guarded command failing. The guarded command keeps its own stdout and stderr either way.

DaemonIdentity
typealias [source]
typealias [source]
DaemonIdentity

Which tmux daemon answered, as tmux itself reports it.

A socket path names a place, not a process: kill-server and a restart give a new daemon the same path, and that daemon numbers its panes from %0 again. The pid alone is not enough — pids are reused — so the start time goes with it.

DecodedFormatValue
typealias [source]
typealias [source]
DecodedFormatValue

What a caller reads for one field, once the text has been decoded.

DefaultOptionScope
typealias [source]
typealias [source]
DefaultOptionScope
DeliveryStatus
typealias [source]
typealias [source]
DeliveryStatus
Digit
typealias [source]
typealias [source]
Digit
EnvironmentScope
typealias [source]
typealias [source]
EnvironmentScope

Environments live at server (global) or session scope, as hooks do.

EnvironmentValue
typealias [source]
typealias [source]
EnvironmentValue

A variable's state in a tmux environment.

null is tmux's -NAME: the variable is present and marked for removal from the environment of any process tmux starts. Absent from the map is the third state, and means tmux carries no entry at all.

FormatFieldName
typealias [source]
typealias [source]
FormatFieldName
FormatIdentityType
typealias [source]
typealias [source]
FormatIdentityType
FormatScope
typealias [source]
typealias [source]
FormatScope
FormatValueType
typealias [source]
typealias [source]
FormatValueType

The shapes tmux writes that are not simply text.

FormatValueTypes
typealias [source]
typealias [source]
FormatValueTypes

Which fields carry which shape.

Derived from tmux's own format.c and held to a live server by tests/integration/format_types.test.ts on every version CI runs.

Local: DecodedFormatValue is what a caller needs.

GuardedTmuxRequest
typealias [source]
typealias [source]
GuardedTmuxRequest

A daemon-guarded request paired with its exact refusal detector.

HookScope
typealias [source]
typealias [source]
HookScope

The server, session, window, or pane table that holds a hook.

LogicalRef
typealias [source]
typealias [source]
LogicalRef
ManyRelation
typealias [source]
typealias [source]
ManyRelation
MenuItem
typealias [source]
typealias [source]
MenuItem

A menu entry, or a horizontal rule.

tmux spells a separator as one empty argument rather than a name/key/command triple, so modelling it as a distinct value keeps callers from fabricating empty fields that tmux would reject.

ModelKindOf
typealias [source]
typealias [source]
ModelKindOf
NonZeroDigit
typealias [source]
typealias [source]
NonZeroDigit
NonZeroDigit
typealias [source]
typealias [source]
NonZeroDigit
OneRelation
typealias [source]
typealias [source]
OneRelation
OperationStatus
typealias [source]
typealias [source]
OperationStatus
OptionScope
typealias [source]
typealias [source]
OptionScope
PaneAliasMap
typealias [source]
typealias [source]
PaneAliasMap
PaneDirection
typealias [source]
typealias [source]
PaneDirection
PaneId
typealias [source]
typealias [source]
PaneId

A pane ID in tmux's %n form.

PaneIdInput
typealias [source]
typealias [source]
PaneIdInput

Raw pane-ID text or an authenticated pane ID.

PaneRef
typealias [source]
typealias [source]
PaneRef
PaneRow
typealias [source]
typealias [source]
PaneRow
PrunePolicy
typealias [source]
typealias [source]
PrunePolicy

What to do with windows and panes the workspace does not describe.

Query
typealias [source]
typealias [source]
Query
QueryValidationErrorCode
typealias [source]
typealias [source]
QueryValidationErrorCode
RawFlag
typealias [source]
typealias [source]
RawFlag

The text tmux sends for a flag: it writes these two and nothing else.

RawFormatValue
typealias [source]
typealias [source]
RawFormatValue

The raw text tmux writes, authenticated where it carries an identity.

RawNumber
typealias [source]
typealias [source]
RawNumber

The decimal text tmux sends for a field it reports as a number or timestamp.

ResizeAdjustmentDirection
typealias [source]
typealias [source]
ResizeAdjustmentDirection
RowWithIdentities
typealias [source]
typealias [source]
RowWithIdentities

A raw format row whose listed identity fields are present.

SafeInteger
typealias [source]
typealias [source]
SafeInteger

A finite whole number within JavaScript's safe integer range.

Examples

import { safeInteger } from "libtmux";
import type { SafeInteger } from "libtmux";
const count: SafeInteger = safeInteger(3);
ScalarCriteria
typealias [source]
typealias [source]
ScalarCriteria
SessionAliasMap
typealias [source]
typealias [source]
SessionAliasMap
SessionId
typealias [source]
typealias [source]
SessionId

A session ID in tmux's $n form.

SessionIdInput
typealias [source]
typealias [source]
SessionIdInput

Raw session-ID text or an authenticated session ID.

SessionRef
typealias [source]
typealias [source]
SessionRef
SessionRow
typealias [source]
typealias [source]
SessionRow
SplitCellSize
typealias [source]
typealias [source]
SplitCellSize

A nonnegative cell count within tmux's signed 32-bit geometry range.

Examples

import { splitSize } from "libtmux";
import type { SplitCellSize } from "libtmux";
const size: SplitCellSize = splitSize(20);
SplitPercentage
typealias [source]
typealias [source]
SplitPercentage

A canonical whole percentage from 0% through 100%.

Examples

import type { SplitPercentage } from "libtmux";
const size: SplitPercentage = "30%";
void size;
SplitSize
typealias [source]
typealias [source]
SplitSize

An authenticated cell count or canonical percentage for a pane split.

Examples

import type { SplitSize } from "libtmux";
const size: SplitSize = "30%";
void size;
StringFilter
typealias [source]
typealias [source]
StringFilter
StringFilterFields
typealias [source]
typealias [source]
StringFilterFields

A field's criteria accept its decoded shape as well as the text tmux sends: where({ active: true }) and where({ active: "1" }) are the same query, and serialize identically. A null criterion matches any wire value that the field decoder treats as absent or invalid, rather than one particular wire spelling.

The text side exists because the wire does. encodeFormatValue lowers every criterion to tmux's text before a query is serialized, and WhereDocumentV1 types both what a caller writes and what decodeWhereDocument gives back — so a type that refused text would be lying about the documents this library's own encoder produces. That is the difference from an ORM, whose query AST never round-trips through a type the caller also authors.

Raw is therefore not a taste. "0" | "1" is the exact wire domain for a flag, while an integer uses ${bigint} intersected with a decimal prefix. That rules out fractions, exponents, radix prefixes, leading zeroes, -0, NaN , and prose. TypeScript cannot bound an integer's magnitude, so the query validator also requires safe range at runtime. format_values.test.ts holds the layers in step.

The substring operations stay string deliberately: contains asks about the characters tmux sent, and a numeric field's text has characters like any other.

TmuxCommand
typealiasreadonly [source]
typealiasreadonly [source]
TmuxCommand

One nonempty tmux command, before command-list separators are inserted.

TmuxCommandResult
typealias [source]
typealias [source]
TmuxCommandResult
TmuxEngine
typealias [source]
typealias [source]
TmuxEngine

What runs a tmux command for a server.

Two obligations beyond returning bytes, and both are what the layers above assume rather than check:

Every request is one tmux invocation and carries its ordered command list. Keeping that structure at the seam prevents an engine from splitting a snapshot into several clients or guessing where global flags end. Environment, stdin, signal, and timeout apply once to the whole invocation.

daemonGuard, when a request carries one, must reach tmux — or the engine must be bound to one daemon for its lifetime, the way a control connection is. Ignoring it on a reconnecting engine means a handle read before a restart addressing whatever now holds its id. guardRequest is what the built-in engine calls to honour it, published so an implementer does not reproduce the wrapper, its else branch, and the stderr that tells refusal from failure.

TmuxEvent
typealias [source]
typealias [source]
TmuxEvent
TmuxId
typealias [source]
typealias [source]
TmuxId

A tmux object ID authenticated for one object kind.

TmuxIdInput
typealias [source]
typealias [source]
TmuxIdInput

Raw text or an already-authenticated ID of the expected kind.

TmuxIdKind
typealias [source]
typealias [source]
TmuxIdKind
TmuxInvocationRequest
typealias [source]
typealias [source]
TmuxInvocationRequest
TmuxLogContext
typealias [source]
typealias [source]
TmuxLogContext
TmuxTransportErrorKind
typealias [source]
typealias [source]
TmuxTransportErrorKind

What went wrong between this process and tmux, as opposed to inside tmux.

WhereDocumentV1
typealias [source]
typealias [source]
WhereDocumentV1
WhereForKind
typealias [source]
typealias [source]
WhereForKind
WhereOf
typealias [source]
typealias [source]
WhereOf
WindowAliasMap
typealias [source]
typealias [source]
WindowAliasMap
WindowDirection
typealias [source]
typealias [source]
WindowDirection
WindowId
typealias [source]
typealias [source]
WindowId

A window ID in tmux's @n form.

WindowIdInput
typealias [source]
typealias [source]
WindowIdInput

Raw window-ID text or an authenticated window ID.

WindowRef
typealias [source]
typealias [source]
WindowRef
WindowRow
typealias [source]
typealias [source]
WindowRow
WindowTarget
typealias [source]
typealias [source]
WindowTarget

A relative direction, or any window target tmux accepts.

The intersection keeps the three literals in autocomplete instead of letting the bare string swallow them.

Workspace
typealias [source]
typealias [source]
Workspace

A validated workspace with every schema default and transform applied.

WorkspaceApplyMilestone
typealias [source]
typealias [source]
WorkspaceApplyMilestone

A high-level apply operation that finished before a later one failed.

WorkspaceApplyStage
typealias [source]
typealias [source]
WorkspaceApplyStage

The high-level operation an apply was attempting when it failed.

WorkspaceInput
typealias [source]
typealias [source]
WorkspaceInput

Workspace data before schema defaults and transforms are applied.

WorkspaceOptionValue
typealias [source]
typealias [source]
WorkspaceOptionValue
WorkspacePane
typealias [source]
typealias [source]
WorkspacePane
WorkspaceRetention
typealias [source]
typealias [source]
WorkspaceRetention

Surplus topology retained because removing it would exceed the policy.

WorkspaceWindow
typealias [source]
typealias [source]
WorkspaceWindow
ZeroToNinetyNine
typealias [source]
typealias [source]
ZeroToNinetyNine
Esc

Type to search.