# SignTransformOptions

```ts
type SignTransformOptions = {
  expiresInSeconds: number;
  nowSeconds?: number;
  tenantId?: number;
};
```

Defined in: packages/asset-client/src/transform.ts:600

## Properties

### expiresInSeconds

```ts
expiresInSeconds: number;
```

Defined in: packages/asset-client/src/transform.ts:606

Lifetime in seconds, 120 .. 604 800. Required — there is no "forever"
option, for the same reason `signAccessUrl` has none: a signed URL that
never expires is a public URL the moment someone forwards it.

***

### nowSeconds?

```ts
optional nowSeconds?: number;
```

Defined in: packages/asset-client/src/transform.ts:614

Injectable clock, for tests that need a URL already dead on arrival.

***

### tenantId?

```ts
optional tenantId?: number;
```

Defined in: packages/asset-client/src/transform.ts:612

The tenant this signature speaks for. Defaults to the process-global
(`setTenantId`, or a `NitidaClient` with `tenantId`) — the tenant is part
of the signed message, so it cannot be guessed from the asset.