# Lit Controller

```typescript
const litAuthProvider = new LitAuthProvider(
    stytchProjectId: string,
    baseUrl: string,
    walletType?: WalletType,
    aa?: AaDetails
)
```

## authenticateWithStytch

```typescript
async authenticateWithStytch(
        accessToken: string,
        userId?: string,
        method?: string
    ): Promise<AuthMethod | undefined>
```

```typescript
export interface AuthMethod {
    authMethodType: number;
    accessToken: string;
}
```

## mintPKP

```typescript
async mintPKP(authMethod: AuthMethod): Promise<IRelayPKP>
```

```typescript
export interface IRelayPKP {
    tokenId: string;
    publicKey: string;
    ethAddress: string;
}
```

## getPKPs

```typescript
async getPKPs(authMethod: AuthMethod): Promise<IRelayPKP[]>
```

```typescript
export interface IRelayPKP {
    tokenId: string;
    publicKey: string;
    ethAddress: string;
}
```

## initSession

```typescript
async initSession(authMethod: AuthMethod, pkp: IRelayPKP, chain: string)
```
